From unknown Fri Jun 13 09:59:51 2025 X-Loop: don@donarmstrong.com Subject: bug#1503: feature request: multiline header (and mode) lines Reply-To: "Peter Mao" , 1503@debbugs.gnu.org Resent-From: "Peter Mao" Resent-To: bug-submit-list@lists.donarmstrong.com Resent-CC: Emacs Bugs Resent-Date: Sat, 06 Dec 2008 06:50:03 +0000 Resent-Message-ID: Resent-Sender: don@donarmstrong.com X-Emacs-PR-Message: report 1503 X-Emacs-PR-Package: emacs X-Emacs-PR-Keywords: Received: via spool by submit@emacsbugs.donarmstrong.com id=B.12285458062501 (code B ref -1); Sat, 06 Dec 2008 06:50:03 +0000 X-Spam-Checker-Version: SpamAssassin 3.2.3-bugs.debian.org_2005_01_02 (2007-08-08) on rzlab.ucr.edu X-Spam-Level: X-Spam-Status: No, score=-8.0 required=4.0 tests=BAYES_00,RCVD_IN_DNSWL_MED autolearn=ham version=3.2.3-bugs.debian.org_2005_01_02 Received: (at submit) by emacsbugs.donarmstrong.com; 6 Dec 2008 06:43:26 +0000 Received: from lists.gnu.org (lists.gnu.org [199.232.76.165]) by rzlab.ucr.edu (8.13.8/8.13.8/Debian-3) with ESMTP id mB66hNtD002495 for ; Fri, 5 Dec 2008 22:43:24 -0800 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1L8qss-0007iV-S5 for bug-gnu-emacs@gnu.org; Sat, 06 Dec 2008 01:43:22 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1L8qsr-0007iA-Vh for bug-gnu-emacs@gnu.org; Sat, 06 Dec 2008 01:43:22 -0500 Received: from [199.232.76.173] (port=45452 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1L8qsr-0007i7-JN for bug-gnu-emacs@gnu.org; Sat, 06 Dec 2008 01:43:21 -0500 Received: from yw-out-1718.google.com ([74.125.46.155]:56641) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1L8qsr-0005q7-2N for bug-gnu-emacs@gnu.org; Sat, 06 Dec 2008 01:43:21 -0500 Received: by yw-out-1718.google.com with SMTP id 9so183215ywk.66 for ; Fri, 05 Dec 2008 22:43:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:to :subject:mime-version:content-type:content-transfer-encoding :content-disposition; bh=E9dLGwqNO5rT2acPftmEN5agC+TLVuxhSxnObrLCiOU=; b=Zmd56Mg7RzutAIWckCohD/VhDz4vRdyj42tSEqeM6phb3NMtabPTzmCF5sbf9Tb+mE BlTuL48LVj3Rrdq+f7zk2syN2ZwMM+uqasypJ1xptG2rS4LcMPKTwTxFTrzVVq+Uxlwn IbaJLp9qKOzM1e7pLqH4bZxL0R96jLGH+upXk= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:to:subject:mime-version:content-type :content-transfer-encoding:content-disposition; b=ozm7VL9jcIje7XCshVPZq8DkOaDkNoM5dzzYy6FjIwRaaDtSQi5rh3absbSYL/G/4m sdlY+Ek4s07TFI3k4j1c+D8368aKU56R9Zyz9AsfZHTnRxlhHW3tUgDggbASacMv3C9M j8IpqNx5dxOe8yB+kDwbzlk+V9rinNZyoNxWY= Received: by 10.151.105.13 with SMTP id h13mr1639272ybm.171.1228545799011; Fri, 05 Dec 2008 22:43:19 -0800 (PST) Received: by 10.151.14.3 with HTTP; Fri, 5 Dec 2008 22:43:18 -0800 (PST) Message-ID: <6da7452a0812052243h34c713b9qf0ee659251d71764@mail.gmail.com> Date: Fri, 5 Dec 2008 22:43:18 -0800 From: "Peter Mao" To: bug-gnu-emacs@gnu.org MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6 (newer, 2) I realize this requires tweaking of the C-code, but I'm not awesome enough to do it myself: Can emacs be given the gift of a header-line that word wraps, so that the header can be more than one line tall? I imagine the same could go for the mode line, but I don't have a clear need for that right now. I know that the fringes can occupy > 1 column, so it seems like an oversight if the header and mode lines are restricted to 1 line. I've written a minor mode for reading/sorting physics abstracts from the physics arXiv. The mode either lists subdirectories directly under the current directory, or recursively lists all subdirectories of the pwd. Either way, the list could potentially be longer than the width of the screen, making some directory names unviewable. A multiline header would make it perfect. I thought of putting that text in the buffer, but that makes it much harder to update the text. Peter Mao From unknown Fri Jun 13 09:59:51 2025 X-Loop: don@donarmstrong.com Subject: bug#1503: feature request: multiline header (and mode) lines Reply-To: martin rudalics , 1503@debbugs.gnu.org Resent-From: martin rudalics Resent-To: bug-submit-list@lists.donarmstrong.com Resent-CC: Emacs Bugs Resent-Date: Sat, 06 Dec 2008 11:00:03 +0000 Resent-Message-ID: Resent-Sender: don@donarmstrong.com X-Emacs-PR-Message: report 1503 X-Emacs-PR-Package: emacs X-Emacs-PR-Keywords: Received: via spool by 1503-submit@emacsbugs.donarmstrong.com id=B1503.1228560686609 (code B ref 1503); Sat, 06 Dec 2008 11:00:03 +0000 X-Spam-Checker-Version: SpamAssassin 3.2.3-bugs.debian.org_2005_01_02 (2007-08-08) on rzlab.ucr.edu X-Spam-Level: X-Spam-Status: No, score=-6.7 required=4.0 tests=AWL,BAYES_00,HAS_BUG_NUMBER autolearn=ham version=3.2.3-bugs.debian.org_2005_01_02 Received: (at 1503) by emacsbugs.donarmstrong.com; 6 Dec 2008 10:51:26 +0000 Received: from mail.gmx.net (mail.gmx.net [213.165.64.20]) by rzlab.ucr.edu (8.13.8/8.13.8/Debian-3) with SMTP id mB6ApMD4000603 for <1503@emacsbugs.donarmstrong.com>; Sat, 6 Dec 2008 02:51:23 -0800 Received: (qmail invoked by alias); 06 Dec 2008 10:51:16 -0000 Received: from 62-47-60-181.adsl.highway.telekom.at (EHLO [62.47.60.181]) [62.47.60.181] by mail.gmx.net (mp032) with SMTP; 06 Dec 2008 11:51:16 +0100 X-Authenticated: #14592706 X-Provags-ID: V01U2FsdGVkX19PyZwtU55PzboAkPWGd6NfmVxvuekMtAD7d9KTuX s+x6grNMQmOqrA Message-ID: <493A58A6.6090508@gmx.at> Date: Sat, 06 Dec 2008 11:49:10 +0100 From: martin rudalics User-Agent: Thunderbird 2.0.0.16 (Windows/20080708) MIME-Version: 1.0 To: 1503@debbugs.gnu.org References: <6da7452a0812052243h34c713b9qf0ee659251d71764@mail.gmail.com> In-Reply-To: <6da7452a0812052243h34c713b9qf0ee659251d71764@mail.gmail.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Y-GMX-Trusted: 0 X-FuHaFi: 0.6899999999999999 > Can emacs be given the gift of a header-line that word wraps, so that > the header can be more than one line tall? I imagine the same could > go for the mode line, but I don't have a clear need for that right > now. I know that the fringes can occupy > 1 column, so it seems like > an oversight if the header and mode lines are restricted to 1 line. > > I've written a minor mode for reading/sorting physics abstracts from > the physics arXiv. The mode either lists subdirectories directly > under the current directory, or recursively lists all subdirectories > of the pwd. Either way, the list could potentially be longer than the > width of the screen, making some directory names unviewable. A > multiline header would make it perfect. > > I thought of putting that text in the buffer, but that makes it much > harder to update the text. At the moment, we can't do that because the fact that a header-line occupies exactly one line of text is hardwired into many lower-level primitives. In principle, what you want could be accomplished by the routines below, but this will certainly have wrinkles (Emacs is not really good at handling zero-length overlays). martin (defvar my-overlay (make-overlay (point-min) (point-min))) (defun my-move (window start) (move-overlay my-overlay start start)) (add-hook 'window-scroll-functions 'my-move nil t) (defun my-text (text) (overlay-put my-overlay 'before-string (propertize text 'face 'header-line))) (my-text "a first line\nand another one\nand a third one\n") From unknown Fri Jun 13 09:59:51 2025 X-Loop: help-debbugs@gnu.org Subject: bug#1503: feature request: multiline header (and mode) lines Resent-From: Stefan Kangas Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 20 Oct 2021 15:54:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 1503 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: martin rudalics Cc: 1503@debbugs.gnu.org Received: via spool by 1503-submit@debbugs.gnu.org id=B1503.163474523413886 (code B ref 1503); Wed, 20 Oct 2021 15:54:02 +0000 Received: (at 1503) by debbugs.gnu.org; 20 Oct 2021 15:53:54 +0000 Received: from localhost ([127.0.0.1]:55251 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mdDub-0003bu-W3 for submit@debbugs.gnu.org; Wed, 20 Oct 2021 11:53:54 -0400 Received: from mail-pl1-f171.google.com ([209.85.214.171]:46733) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mdDuZ-0003bd-OH for 1503@debbugs.gnu.org; Wed, 20 Oct 2021 11:53:52 -0400 Received: by mail-pl1-f171.google.com with SMTP id 21so16427860plo.13 for <1503@debbugs.gnu.org>; Wed, 20 Oct 2021 08:53:51 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:in-reply-to:references:user-agent :mime-version:date:message-id:subject:to:cc; bh=eextQyqOFK7IcFL+7aYhlO3e36rKTJ0gsgMGGv6ihpE=; b=YtIUlOfWesBSdgOe0llKDVQy4Hdq6aNO1m0T0T4gGc0gg+zDp/vCyW3ivPOJzsqHlq PUJAOhaYaDmjgXduFZrN73Tz9WTDM+d7Z8ViwlvpMnFNyOrm8MeTTIfSn8MCzQRHf2iQ NVgyfhe6gQ6hb5H2r/XniCcM4cAhw9OgJGzVeZN/qB3E509SG5QEHeAdql7+3r53B1rz kriLV10+MmWLlT+GYwVyWQWOAr92uvQQexAarM8BxnFWqT1A2cMKXy/VpSc05T3KbYsl tbAnii0u+oU30Py3fhhuZbRBu8WxnJ8xPF7PFkYgGbJxkcfFPBibkY0BxpTMHPFs7PyO eQ6Q== X-Gm-Message-State: AOAM5313nTR/uDmssw+IhMBg+AolEfp/2zsZp9EkTJb7KqM476wfNrtK t/Q+lqQgJxvqId5mn+/4PlKzoOdWX26GazTYdUk= X-Google-Smtp-Source: ABdhPJxIy8j9cEfDGRXOBEWCUSHVvFQE5hpIKpMvTYCsMmu18cTSD3/S8AHaFZ/O8xMXD8vwjWRnezT0AfNhaC2qPKA= X-Received: by 2002:a17:902:e74a:b0:13f:3538:fca0 with SMTP id p10-20020a170902e74a00b0013f3538fca0mr420916plf.22.1634745225796; Wed, 20 Oct 2021 08:53:45 -0700 (PDT) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Wed, 20 Oct 2021 08:53:45 -0700 From: Stefan Kangas In-Reply-To: <493A58A6.6090508@gmx.at> (martin rudalics's message of "Sat, 06 Dec 2008 11:49:10 +0100") References: <6da7452a0812052243h34c713b9qf0ee659251d71764@mail.gmail.com> <493A58A6.6090508@gmx.at> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) MIME-Version: 1.0 Date: Wed, 20 Oct 2021 08:53:45 -0700 Message-ID: Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.5 (/) 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.5 (/) martin rudalics writes: >> Can emacs be given the gift of a header-line that word wraps, so that >> the header can be more than one line tall? I imagine the same could >> go for the mode line, but I don't have a clear need for that right >> now. I know that the fringes can occupy > 1 column, so it seems like >> an oversight if the header and mode lines are restricted to 1 line. >> >> I've written a minor mode for reading/sorting physics abstracts from >> the physics arXiv. The mode either lists subdirectories directly >> under the current directory, or recursively lists all subdirectories >> of the pwd. Either way, the list could potentially be longer than the >> width of the screen, making some directory names unviewable. A >> multiline header would make it perfect. >> >> I thought of putting that text in the buffer, but that makes it much >> harder to update the text. > > At the moment, we can't do that because the fact that a header-line > occupies exactly one line of text is hardwired into many lower-level > primitives. Could those primitives be changed to support this use-case? I'm not very interested in a multi-line mode-line myself, but I can see many uses for a multi-line header line. From unknown Fri Jun 13 09:59:51 2025 X-Loop: help-debbugs@gnu.org Subject: bug#1503: feature request: multiline header (and mode) lines Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 20 Oct 2021 16:46:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 1503 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Stefan Kangas Cc: rudalics@gmx.at, 1503@debbugs.gnu.org Received: via spool by 1503-submit@debbugs.gnu.org id=B1503.163474836022501 (code B ref 1503); Wed, 20 Oct 2021 16:46:01 +0000 Received: (at 1503) by debbugs.gnu.org; 20 Oct 2021 16:46:00 +0000 Received: from localhost ([127.0.0.1]:55340 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mdEj1-0005qS-G7 for submit@debbugs.gnu.org; Wed, 20 Oct 2021 12:45:59 -0400 Received: from eggs.gnu.org ([209.51.188.92]:51698) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mdEiy-0005jm-LO for 1503@debbugs.gnu.org; Wed, 20 Oct 2021 12:45:57 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:47484) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mdEit-00069p-6s; Wed, 20 Oct 2021 12:45:51 -0400 Received: from [87.69.77.57] (port=2709 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mdEis-0001lf-Jy; Wed, 20 Oct 2021 12:45:50 -0400 Date: Wed, 20 Oct 2021 19:46:03 +0300 Message-Id: <83tuhbablg.fsf@gnu.org> From: Eli Zaretskii In-Reply-To: (message from Stefan Kangas on Wed, 20 Oct 2021 08:53:45 -0700) References: <6da7452a0812052243h34c713b9qf0ee659251d71764@mail.gmail.com> <493A58A6.6090508@gmx.at> X-Spam-Score: -2.3 (--) 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 (---) > From: Stefan Kangas > Date: Wed, 20 Oct 2021 08:53:45 -0700 > Cc: 1503@debbugs.gnu.org > > >> I thought of putting that text in the buffer, but that makes it much > >> harder to update the text. > > > > At the moment, we can't do that because the fact that a header-line > > occupies exactly one line of text is hardwired into many lower-level > > primitives. > > Could those primitives be changed to support this use-case? Of course. It's just a lot of work, and will probably have a long tail (because many places assume that without stating the assumption clearly enough for you to catch it). From unknown Fri Jun 13 09:59:51 2025 X-Loop: help-debbugs@gnu.org Subject: bug#1503: feature request: multiline header (and mode) lines Resent-From: martin rudalics Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 21 Oct 2021 09:07:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 1503 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Stefan Kangas Cc: 1503@debbugs.gnu.org Received: via spool by 1503-submit@debbugs.gnu.org id=B1503.163480717820497 (code B ref 1503); Thu, 21 Oct 2021 09:07:02 +0000 Received: (at 1503) by debbugs.gnu.org; 21 Oct 2021 09:06:18 +0000 Received: from localhost ([127.0.0.1]:56253 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mdU1i-0005KX-CS for submit@debbugs.gnu.org; Thu, 21 Oct 2021 05:06:18 -0400 Received: from mout.gmx.net ([212.227.17.21]:50157) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mdU1g-0005KJ-LX for 1503@debbugs.gnu.org; Thu, 21 Oct 2021 05:06:17 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1634807170; bh=ZXjnwIXrJ2wyiAZbxySP4QOkWr5WBoWxQz4RcAGazxg=; h=X-UI-Sender-Class:Subject:To:Cc:References:From:Date:In-Reply-To; b=R62v9cG2DYzWvOk+bOHOrXcp2VGxGIuzbnB+kzWeAM1Q8jS4hWfke6QFBU5jEqO+P YG++Sc/Giv20R93sYht8MhEd63LPjhYyRg88TfpEBSJSPCCz87i61/Pzyfnpvg6uDf 0nu42q5oLa6Ff4M3xWwz8EJIJi0vJCRnfK4oP+wI= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from [192.168.1.102] ([46.125.249.37]) by mail.gmx.net (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1N7zFj-1miLdh1Cz5-0155j7; Thu, 21 Oct 2021 11:06:10 +0200 References: <6da7452a0812052243h34c713b9qf0ee659251d71764@mail.gmail.com> <493A58A6.6090508@gmx.at> From: martin rudalics Message-ID: <7d666789-8663-d29c-241b-0303a15a4b09@gmx.at> Date: Thu, 21 Oct 2021 11:06:08 +0200 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:JIXuLMhw2bguq07WQ1w4qaDtm/LR7bvdsOihBwaI3K7arfQHzZE DReZ6Uh3AlZOa7khWWwmddkGwWFJSxOr3rp60ozpML9HDW1To60TYmmcPis1c4FOTbLBa5w SaSp2Bfaxe4MuIUTt8jqEp3PkvFRD2EbPZ+bX95OTni6OzIAaxOuHoEosb9rzRfNHqFB6Yd ERriERzb59FImlgX4SxuA== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:2mej3o+Q6bI=:5MIELnjtNTmN7NF1BeUUJv JiOjSt/NfEfk7MT2HUoikiOlEgJrfygokpr5ezqePRniSi8TdvuqmhGImY4G68LD8rrKwKKMG YPB2Bcp50Jj/lQvnkzMfJ7XY6MuENupBCJytCbDbxoFjmMyev41/5M4dRlTnKGTNC5cB9zoNa biMvMAtpQQPNUvzjJf9m9DN/8ByViDhp0WgXH0AMFoS+jm4wjCAoiKilFpZdR/ATIsW9BtLhC hNpjnTh130VNb70WyE0Ade6cQd8hAYx/w5HeVlhjEl5UFKEcW2yznwJCUCCK3iL75F0SlBmYH TzzD5e5pqP90gSPUCz55KY5xXH7hchMwPL+Kaa0eMix60ZjyW61QGzJY/w1/M9Rh5LN7JcObe pTFdWgCudmfOjDjYonrvTgPBlGJBTWaMFoJxM9k1JNK8L+GDrDnye08xnRP6glqe410nA0J7k T0ZftUM+6/QrqlWb8D7gdbIU77VRBoava6i87z5clZelly83uFfVCIky2Qb4xOjIMmOlH96W2 FEP1JCSl0DSeIiNdlVVGkb2hIPLc/Eqft+CZzvfEl39GKMSusbmMYHeREe8YrEDPlgygJ7Dwc V6lEJSacPgQfq54B0340ydSOin2e60OiXvly/F6t3HS54sXGppeMFxv82ytoluqK8FZ1zDnwn MolqI1fkDkgsfOYkhqMcT2sj5MA5CVUDh9qocQIKzFNaBbZvAjqgG7+akPSyyhaXkQSnXBrfS /6mGkvVsKRbyr4mN3pmMhCfjRIyhHI3dhrWL2jrTgtFqI/S/8kU38Rn18OsKwvdnwRsHTIQ+T T/9nvz5arx5EI6RTeSIvWGFkE1SeQeM2+HtZKdTG/LHozeyItjt74SPPGpTGBEe6IQwnlTD23 DgFw5NFXNUAajz5KV5qutUHBo/pxTYmeRZck0PIV+3gmkbjR9yB0MzBKnUAMT9gmWLgre1/3w b54AkoNIrLI+SdX7MXLo+lPBEaV+P//ZET95kkCPiWQXFwe4tHbo2i33kPkQopkg9kwMQFgp2 4eOz4PfBmBZBzsfz3L79CqPxiq7pJN57469VdVe82loCOWFp42K+LGhx6zNvBYaYkpDtMnjKO cbrK/BszvEIPTU= X-Spam-Score: -0.0 (/) 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: -1.0 (-) >>> Can emacs be given the gift of a header-line that word wraps, so that >>> the header can be more than one line tall? I imagine the same could >>> go for the mode line, but I don't have a clear need for that right >>> now. I know that the fringes can occupy > 1 column, so it seems like >>> an oversight if the header and mode lines are restricted to 1 line. >>> >>> I've written a minor mode for reading/sorting physics abstracts from >>> the physics arXiv. The mode either lists subdirectories directly >>> under the current directory, or recursively lists all subdirectories >>> of the pwd. Either way, the list could potentially be longer than the >>> width of the screen, making some directory names unviewable. A >>> multiline header would make it perfect. >>> >>> I thought of putting that text in the buffer, but that makes it much >>> harder to update the text. >> >> At the moment, we can't do that because the fact that a header-line >> occupies exactly one line of text is hardwired into many lower-level >> primitives. > > Could those primitives be changed to support this use-case? > > I'm not very interested in a multi-line mode-line myself, but I can see > many uses for a multi-line header line. IIUC the OP would be better served with a separate buffer for listing these subdirectories shown above the window of his buffer. To glue them together, the two windows could be put into an atomic window. Omitting all decorations for that separate buffer, it would not be discernible from a header line. So if you see any use for a multi-line header line, please give me details where a specification via 'header-line-format' would be preferable to one that puts that stuff into a separate buffer. martin From unknown Fri Jun 13 09:59:51 2025 X-Loop: help-debbugs@gnu.org Subject: bug#1503: feature request: multiline header (and mode) lines Resent-From: Stefan Kangas Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 21 Oct 2021 16:35:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 1503 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: martin rudalics Cc: 1503@debbugs.gnu.org Received: via spool by 1503-submit@debbugs.gnu.org id=B1503.163483406022417 (code B ref 1503); Thu, 21 Oct 2021 16:35:01 +0000 Received: (at 1503) by debbugs.gnu.org; 21 Oct 2021 16:34:20 +0000 Received: from localhost ([127.0.0.1]:58405 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mdb1I-0005pV-Jy for submit@debbugs.gnu.org; Thu, 21 Oct 2021 12:34:20 -0400 Received: from mail-pg1-f173.google.com ([209.85.215.173]:39692) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mdb1G-0005pH-FN for 1503@debbugs.gnu.org; Thu, 21 Oct 2021 12:34:19 -0400 Received: by mail-pg1-f173.google.com with SMTP id g184so806991pgc.6 for <1503@debbugs.gnu.org>; Thu, 21 Oct 2021 09:34:18 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:in-reply-to:references:mime-version:date :message-id:subject:to:cc; bh=SIVN3vFhYNZlNEQB8fb6v4uW3dOLKvW9Db9TnHF5BWk=; b=tnSCexJIEbZb9A5CmQWtBPKd4B+5MXOe51vMfU7NA9eQA6ilfies7cAyT95npLCCj5 z5dMCWpvGLZIUzC30861+qw1rAl7p5eg/1M2RgZSvRNH8eboC9eUBvg2FgGzFgKlURzL EQ5Mru+VT+1clWHQlndfE/TH1yhQsCQPCY3EhZtCa+R1L8DYbTNvUOtfAwnuHbds88iv X2eq0jGhI0Rqc7/LiQP2HBfla31j7RL5Yct1Va3voS0nws7L7+v1OPA8P0Jl6gofiI5Q gitJEG9JIsoX5KVqCI5G6EWrOCO8K3BQw/bDEnl0PClWLFvC7xUoC2/lH6Jx/lMin+Gl H2Xg== X-Gm-Message-State: AOAM533eFJ0567QLtbgfiY7Hn6JjqFBes9wcsIsQ58CeVy0DM6tTlvje av1P2oqop6IlBFABsLxH410ARI4NOFyyQO4w1w0= X-Google-Smtp-Source: ABdhPJzhxD0D1bflXPYfzI1RBPEDJpN9eQcHh53FXB88vbR+AjViF/tTKjwqXCIYfloQmsHOrZeGcF/Z+W09JVoPwUs= X-Received: by 2002:a63:81c2:: with SMTP id t185mr5290266pgd.114.1634834052592; Thu, 21 Oct 2021 09:34:12 -0700 (PDT) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Thu, 21 Oct 2021 09:34:11 -0700 From: Stefan Kangas In-Reply-To: <7d666789-8663-d29c-241b-0303a15a4b09@gmx.at> References: <6da7452a0812052243h34c713b9qf0ee659251d71764@mail.gmail.com> <493A58A6.6090508@gmx.at> <7d666789-8663-d29c-241b-0303a15a4b09@gmx.at> MIME-Version: 1.0 Date: Thu, 21 Oct 2021 09:34:11 -0700 Message-ID: Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.5 (/) 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.5 (/) martin rudalics writes: > IIUC the OP would be better served with a separate buffer for listing > these subdirectories shown above the window of his buffer. To glue them > together, the two windows could be put into an atomic window. Omitting > all decorations for that separate buffer, it would not be discernible > from a header line. > > So if you see any use for a multi-line header line, please give me > details where a specification via 'header-line-format' would be > preferable to one that puts that stuff into a separate buffer. One benefit of the header line is that it always stays in place, whereas with a buffer you never know where it might end up. Or is there a way to force a buffer in place with the same strong guarantee? We also might not want users to switch to that buffer, as it would be more annoying than useful (e.g. headers in tabulated-list-mode). AFAIU, with a regular buffer you will always be able to switch to them with `other-window'. I was also going to say that with header-line-format you get horizontal scrolling automatically, but it turns out that you don't. In any case, it seems like this feature shouldn't be too hard to add. (I remember now that I added code to fix that in one of my packages.) From unknown Fri Jun 13 09:59:51 2025 X-Loop: help-debbugs@gnu.org Subject: bug#1503: feature request: multiline header (and mode) lines Resent-From: martin rudalics Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 21 Oct 2021 17:19:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 1503 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Stefan Kangas Cc: 1503@debbugs.gnu.org Received: via spool by 1503-submit@debbugs.gnu.org id=B1503.163483673227376 (code B ref 1503); Thu, 21 Oct 2021 17:19:02 +0000 Received: (at 1503) by debbugs.gnu.org; 21 Oct 2021 17:18:52 +0000 Received: from localhost ([127.0.0.1]:58460 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mdbiO-00077T-AU for submit@debbugs.gnu.org; Thu, 21 Oct 2021 13:18:52 -0400 Received: from mout.gmx.net ([212.227.15.19]:38849) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mdbiL-00077D-Me for 1503@debbugs.gnu.org; Thu, 21 Oct 2021 13:18:51 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1634836723; bh=+7Vrb259m26xQiwehgxRLhBqwJKy2qU882zcaRwV4pM=; h=X-UI-Sender-Class:Subject:To:Cc:References:From:Date:In-Reply-To; b=BJ/zu5VLlfhuJrIyJUx/CBVGnz3EQIvLMzlXZmYieviBEjZ1Slbug2YmcqIhIFUKL mO41PtWPQN3ophqj4uw8cxJemvLmPThzKZJXQM22kr9AyFFONhi5xpYxqLxOxasw8B klczrQC35wZco+kZTdWiCEx6PKDbDhJgcI23MjlA= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from [192.168.1.102] ([213.142.97.47]) by mail.gmx.net (mrgmx005 [212.227.17.190]) with ESMTPSA (Nemesis) id 1MNbkv-1mKBHU1SOZ-00P1hl; Thu, 21 Oct 2021 19:18:43 +0200 References: <6da7452a0812052243h34c713b9qf0ee659251d71764@mail.gmail.com> <493A58A6.6090508@gmx.at> <7d666789-8663-d29c-241b-0303a15a4b09@gmx.at> From: martin rudalics Message-ID: <266d3439-b80c-9523-7df5-725bb16f903d@gmx.at> Date: Thu, 21 Oct 2021 19:18:41 +0200 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:VvsGOod1GkRzR4vpKzbrjCUwpEUKeKZpyYf4lLUyAw58gNd3+EM Cspw56nBzD+ObZ10KP/FRubFkp7GcwHD+LPIVyOicXaa3lZAngNGS2g83/cQsyBIoBan7DG FNVJiuD4BKM9ui89rs6Jm7aZPiDM0TlJcKxZMXZhHSNXgFiuyP2BaYQ7wK7/Pq3ejLH7LBE vWnF0W+l6UuxN7CEf27Rg== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:X/g7aoXdaCk=:R3G2utiPorwvCvCTrHREou 8gz+Udd3MdYMUPA8GlPNij45AigS9Q+lFYXn8NdqvhCcYGKMEOZMxls/7bsNul11QSbuhj5mz 1/vgbtA2gjcoxx5DC/2mTFAK2VqwFMltj8OXQhvBjfSIdnVjKoMt+RxkbaOsxSFvUOhhIVDtg l+tuI1gF/hwczJyvKgrP9oeVq+Zlo1GmsdlJBPhad7Qj7xfKeU/ViTwEINAqU+vYJ/pS8wKHw 1MecUSCE8apg7DWcJrkRWnKVJ6kzDA5wcYiu5D/693grXaOCWi+4FCPlKNwOs87mwm+KLNMoE PuUNAzcKIqilSupRvwScrtrdOU3fgrTz1nckIQMH9WBxLt5BNyQ44e+nJr799P+7DsH9cyy5P Fhwhf8h3qdOFtyYyxz1M9k7aEcXoYtZCBJpYFjDWzse2p1OsH6TPlGnipFo/nq5SzOxalwJF1 pKM9iLj74rvqrFe4KbrFJC2tv0XWOwvxFSyHjeF3GMF+YMwj3QUV/KykDRLkcaW+yFqhCYc+L mB3JR6cSarb4WifoN4XzeXxhSPKp1hI4GurBf+nsbbNR5R/llMptphaumAmqYPDV6Sm4pYGil YrgYRTevr2fuZBb//QTMNSOQexH89AhNxgKjbeG+yGeia9ewljljVSfvd0DRP1ZX0Npe9SLcN 2VaNwyd0pJXS09HKW4O+/qfuaKcdxoo2+eMSJ9lQEufKoJAkSbvf9beg6+q5kjyQof47m+R07 IConOZCm9z0+XbfqMysnwF7aHP29aNOkVlXIwoZj3QZkuL3fKx2AbxNfcCOLTtbsT8WQKEyLJ VVX3YrNR95L0bPMHZO5R6pBlDPjPpsdmRD/oZW3EieX1lwScB6oDe6Q6+Z5SUfpsBZL3yoxuE P47KW+BIeMObj27gkeUhFyT66SdrEFyfF6k6mYIi/yi4wwp89ub6VG6iW+sBagMlg9W6cn5NY FBbqax0U8Pv91Nqj+1msoT8SE0puE4inyp+h26XyjKj+PXb3OIbV/qh0kqvgrqpWIFOIyYQfY EfiFglx8YsMhUeSFTR9OreNu4IfAIhlyYCFS+7yZNVS2b0K9rRVOLEkZ54mpSoboc6QnI0bLQ F+u1ATGDw9+fEs= X-Spam-Score: -0.7 (/) 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: -1.7 (-) > One benefit of the header line is that it always stays in place, whereas > with a buffer you never know where it might end up. Or is there a way > to force a buffer in place with the same strong guarantee? Why not? Have you ever seen windows deliberately change places on a frame? Atomic windows are glued together like a window and its mode lines. > We also might not want users to switch to that buffer, as it would be > more annoying than useful (e.g. headers in tabulated-list-mode). AFAIU, > with a regular buffer you will always be able to switch to them with > `other-window'. That's what the 'no-other-window' parameter is for. With the slight difference that with a window you can turn it off temporarily. > I was also going to say that with header-line-format you get horizontal > scrolling automatically, but it turns out that you don't. In any case, > it seems like this feature shouldn't be too hard to add. (I remember > now that I added code to fix that in one of my packages.) XEmacs has it, IIRC. martin