From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "Drew Adams" Newsgroups: gmane.emacs.devel Subject: RE: Customizing the mode line Date: Sat, 31 Oct 2009 09:03:42 -0700 Message-ID: <4B7BDAAB618E4D9C898E8EB32A2CDB37@us.oracle.com> References: <83skd1dta0.fsf@gnu.org> <87aaz8nnwg.fsf@catnip.gol.com> <83bpjodk5g.fsf@gnu.org> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1257005348 15646 80.91.229.12 (31 Oct 2009 16:09:08 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 31 Oct 2009 16:09:08 +0000 (UTC) Cc: monnier@iro.umontreal.ca, emacs-devel@gnu.org To: "'Eli Zaretskii'" , "'Miles Bader'" Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Oct 31 17:09:00 2009 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1N4GVf-0001vT-KJ for ged-emacs-devel@m.gmane.org; Sat, 31 Oct 2009 17:09:00 +0100 Original-Received: from localhost ([127.0.0.1]:46357 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1N4GVf-0005tA-4G for ged-emacs-devel@m.gmane.org; Sat, 31 Oct 2009 12:08:59 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1N4GR8-0002os-1N for emacs-devel@gnu.org; Sat, 31 Oct 2009 12:04:18 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1N4GR3-0002lE-1x for emacs-devel@gnu.org; Sat, 31 Oct 2009 12:04:17 -0400 Original-Received: from [199.232.76.173] (port=39776 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1N4GR2-0002kz-Tk for emacs-devel@gnu.org; Sat, 31 Oct 2009 12:04:12 -0400 Original-Received: from rcsinet12.oracle.com ([148.87.113.124]:64289 helo=rgminet12.oracle.com) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1N4GQu-0004rE-8G; Sat, 31 Oct 2009 12:04:04 -0400 Original-Received: from acsinet15.oracle.com (acsinet15.oracle.com [141.146.126.227]) by rgminet12.oracle.com (Switch-3.3.1/Switch-3.3.1) with ESMTP id n9VG3XgZ030313 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Sat, 31 Oct 2009 16:03:35 GMT Original-Received: from acsmt353.oracle.com (acsmt353.oracle.com [141.146.40.153]) by acsinet15.oracle.com (Switch-3.3.1/Switch-3.3.1) with ESMTP id n9V6xaWG031922; Sat, 31 Oct 2009 16:05:22 GMT Original-Received: from abhmt004.oracle.com by acsmt358.oracle.com with ESMTP id 20743953641257005025; Sat, 31 Oct 2009 11:03:45 -0500 Original-Received: from dradamslap1 (/141.144.80.25) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Sat, 31 Oct 2009 09:03:45 -0700 X-Mailer: Microsoft Office Outlook 11 Thread-Index: AcpaBuMba1oPGJFbTBm9X0XhjgNEYAANGtUQ In-Reply-To: <83bpjodk5g.fsf@gnu.org> X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5579 X-Source-IP: acsmt353.oracle.com [141.146.40.153] X-Auth-Type: Internal IP X-CT-RefId: str=0001.0A090203.4AEC5FEE.017A:SCFMA4539814,ss=1,fgs=0 X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6 (newer, 1) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:116512 Archived-At: > We can start by making a list of minor modes that are important. > Right now, we have Ovwrt, Fill, Narrow, and some unspecified things in > Viper. No, let's start by throwing out the bathwater, not the baby. As I said, we can start by: a. Reducing the length of mode names that are long - both major and minor. b. Improving tooltips to actually provide info about the current field value. c. Perhaps reducing buffer-name length, when space becomes critical (i.e. dynamically). IOW, first get rid of extra, wasted space, and put the full info on tooltips, to compensate. We may well find that there is no need to remove any fields, if fields are shortened reasonably. There is no reason that we abbreviate `Overwrite' as `Ovwrt' but we don't abbreviate `Emacs-Lisp' to `Elisp' or even `EL'. There's no reason for long lighters such as `Lisp Interaction' and `Dired by name'. They date from the days when the mode line was the western wilderness; that territory has long since been settled. And Eli needs room to park his mailbox+load-average+which-func Winnebago. Currently there is wasted space just asking to be reclaimed - that's the place to start, if we're worried about space on the default mode line. 4 or 5 chars should be enough for any lighter - major or minor. `Narow' or `Nrw' - even `Vipr'. `U' instead of `Unix'. And so on. We should not remove any global-minor-mode lighters, as long as we haven't come up with a good alternative for providing continual access to a 4-char status indicator (lighter) somewhere, as well as access to the minor mode's menu. Sticking all of the minor-mode menus on the same popup menu as the major mode is not a great solution, but it could be done if we desperately need the space and we find no other solution. (So far, we haven't even looked.) But there needs to be some place where the equivalent of global-minor-mode lighters is displayed continually. Eli's original complaint said that things like minor-mode indicators and the size indicator were crowding out stuff that he considers more important. As examples of the latter he included time of day, a you've-got-mail indicator, and which-func-mode help. More recently he added load-average to his list. Those are things that are not even part of the default mode line! That means changing the Emacs default mode line to fit one person's preferences and customizations. And time of day, mail, and load-average are not even buffer- or window-specific. They should be the first things to _remove_ from the default mode line, if there were present. If you turn on eldoc, which-func-mode, load-average display, mail notification, and who knows what else, then sure, you might find that you are crowded for space. But the solution to that problem is personal customization. Which is one reason I support Eli's original request: easier customization of the mode line. That is the solution for his personal difficulty - not removing things like lighters and size indicator from the _default_ mode line. [Eli, you even go so far as to say that your not being able to see which-func help properly "clearly affects _our_ ability to work on improving Emacs". Sheesh. You are an important developer, but you are only one user. The Emacs mode line default should be designed for users (and not just one), not for developers.] So there are two things we can do to improve the mode line, without losing anything: (1) Shorten fields that are long and put the full field info on tooltips. (2) Find a way to let users customize the mode line more easily. Wrt #2, I don't have a solution, but it should be along the lines of providing for prioritization: keep stuff as long as there is room, then progressively remove stuff that the user has given lower priority. But let's not confuse #1, improving the default, with #2, improving customization. And in particular, let's _not start_ by removing any fields from the default mode line.