From mboxrd@z Thu Jan 1 00:00:00 1970 From: Karl Fogel Subject: [PROPOSAL] Use prefix arg to control scope of org-narrow-to-subtree. Date: Wed, 24 Apr 2019 14:05:10 -0500 Message-ID: <87ftq7kyvt.fsf@red-bean.com> Reply-To: Karl Fogel Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([209.51.188.92]:48116) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hJNCl-00089X-NO for emacs-orgmode@gnu.org; Wed, 24 Apr 2019 15:05:17 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hJNCj-0006ch-UX for emacs-orgmode@gnu.org; Wed, 24 Apr 2019 15:05:15 -0400 Received: from mail-io1-xd2d.google.com ([2607:f8b0:4864:20::d2d]:44760) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hJNCj-0006Xe-OL for emacs-orgmode@gnu.org; Wed, 24 Apr 2019 15:05:13 -0400 Received: by mail-io1-xd2d.google.com with SMTP id r71so6398755iod.11 for ; Wed, 24 Apr 2019 12:05:13 -0700 (PDT) Received: from kwork (74-92-190-114-Illinois.hfc.comcastbusiness.net. [74.92.190.114]) by smtp.gmail.com with ESMTPSA id f8sm10004936itc.27.2019.04.24.12.05.11 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Wed, 24 Apr 2019 12:05:11 -0700 (PDT) List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: "Emacs-orgmode" To: Org Mode Hi. This is a feature proposal -- if the consensus is that it would be welcomed, I'm happy to code it. I just didn't want to take the time to write it if there's no chance for it to be accepted upstream (since I don't want to be maintaining my own personal branch of Org Mode). It would be useful if `org-narrow-to-subtree' could optionally narrow to the next subtree(s) up, rather than only to the subtree point is currently in. For example, assume this text: * This is the first level Some text here. ** This is the second level Some other text here. *** This is the third level By now we all know this song. It is such a pretty song. **** This is the fourth level But do we have to sing it all day long? This car trip is getting incong ***** This is the fifth level ruously unrhymed. Further assume that point is on the "c" of "car trip". In the current Org Mode, if you type `C-x n s', it will narrow to the fourth-level subtree (with the fifth level included in the narrowed buffer, of course). Since `org-narrow-to-subtree' takes no arguments at all right now, it's conveniently ripe for improvement :-). My proposal is for each raw prefix arg (each `C-u' prefix) to expand the narrowing level outward/upward by one. So in the above situation: - `C-u C-x n s' would narrow to the third-level subtree - `C-u C-u C-x n s' would narrow to the second-level subtree And so on. If you offer too many `C-u's, such that the narrowing would be wider than the current surrounding first-level subtree, then there are two possible ways we could handle it: 1) Extra `C-u's are ignored -- just narrow to surrounding 1st-level subtree. 2) Throw an error. I prefer (1), because it would be the more useful behavior, even though (2) would be easier to implement (since `org-back-to-heading' already throws the error). However, I'd welcome others' feedback on that question, or on any other aspect of this proposal. Best regards, -Karl