From unknown Mon Sep 08 13:01:36 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#45147 <45147@debbugs.gnu.org> To: bug#45147 <45147@debbugs.gnu.org> Subject: Status: Org-like cycling in outline-minor-mode Reply-To: bug#45147 <45147@debbugs.gnu.org> Date: Mon, 08 Sep 2025 20:01:36 +0000 retitle 45147 Org-like cycling in outline-minor-mode reassign 45147 emacs submitter 45147 Juri Linkov severity 45147 wishlist tag 45147 patch fixed thanks From debbugs-submit-bounces@debbugs.gnu.org Wed Dec 09 14:22:44 2020 Received: (at submit) by debbugs.gnu.org; 9 Dec 2020 19:22:44 +0000 Received: from localhost ([127.0.0.1]:36142 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kn52j-0004Du-O9 for submit@debbugs.gnu.org; Wed, 09 Dec 2020 14:22:44 -0500 Received: from lists.gnu.org ([209.51.188.17]:48384) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kn52f-0004Dk-ET for submit@debbugs.gnu.org; Wed, 09 Dec 2020 14:22:28 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:38934) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn52Z-0006jr-RY for bug-gnu-emacs@gnu.org; Wed, 09 Dec 2020 14:22:21 -0500 Received: from relay6-d.mail.gandi.net ([217.70.183.198]:59257) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kn52V-0005hF-7N for bug-gnu-emacs@gnu.org; Wed, 09 Dec 2020 14:22:19 -0500 X-Originating-IP: 91.129.99.98 Received: from mail.gandi.net (m91-129-99-98.cust.tele2.ee [91.129.99.98]) (Authenticated sender: juri@linkov.net) by relay6-d.mail.gandi.net (Postfix) with ESMTPSA id 3B0C3C0008 for ; Wed, 9 Dec 2020 19:22:09 +0000 (UTC) From: Juri Linkov To: bug-gnu-emacs@gnu.org Subject: Org-like cycling in outline-minor-mode Organization: LINKOV.NET Date: Wed, 09 Dec 2020 21:15:14 +0200 Message-ID: <874kkuyhfx.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Received-SPF: pass client-ip=217.70.183.198; envelope-from=juri@linkov.net; helo=relay6-d.mail.gandi.net X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.6 (-) 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: -1.0 (-) --=-=-= Content-Type: text/plain As suggested in bug#41198, here is a patch that adds two new options (disabled by default): - outline-minor-mode-font-lock that enables outline font-lock in outline-minor-mode - outline-minor-mode-cycle that enables heading cycle in outline-minor-mode And at the end of the patch are two examples that enable this feature in the files etc/compilation.txt and etc/grep.txt. So visiting these files will highlight their outline headers, and will allow typing 'TAB' to cycle between `hide all', `headings only' and `show all' when point is on the heading line. Typing 'S-TAB' on the heading line cycles the whole buffer. Typing these keys anywhere outside heading lines uses their default bindings, so TAB will go to the next link, and S-TAB will navigate back to the previous link. --=-=-= Content-Type: text/x-diff Content-Disposition: inline; filename=outline-minor-mode-cycle.patch diff --git a/lisp/outline.el b/lisp/outline.el index 85f9de4e1b..b6973e60dd 100644 --- a/lisp/outline.el +++ b/lisp/outline.el @@ -175,10 +175,8 @@ outline-minor-mode-menu-bar-map outline-mode-menu-bar-map)))))) map)) -(defvar outline-mode-map +(defvar outline-mode-cycle-map (let ((map (make-sparse-keymap))) - (define-key map "\C-c" outline-mode-prefix-map) - (define-key map [menu-bar] outline-mode-menu-bar-map) ;; Only takes effect if point is on a heading. (define-key map (kbd "TAB") `(menu-item "" outline-cycle @@ -187,11 +185,22 @@ outline-mode-map (define-key map (kbd "") #'outline-cycle-buffer) map)) +(defvar outline-mode-map + (let ((map (make-sparse-keymap))) + (set-keymap-parent map outline-mode-cycle-map) + (define-key map "\C-c" outline-mode-prefix-map) + (define-key map [menu-bar] outline-mode-menu-bar-map) + map)) + (defvar outline-font-lock-keywords '( ;; Highlight headings according to the level. (eval . (list (concat "^\\(?:" outline-regexp "\\).+") - 0 '(outline-font-lock-face) nil t))) + 0 '(if outline-minor-mode-cycle + (list 'face (outline-font-lock-face) + 'local-map outline-mode-cycle-map) + (outline-font-lock-face)) + nil t))) "Additional expressions to highlight in Outline mode.") (defface outline-1 @@ -305,6 +314,19 @@ outline-minor-mode-prefix (define-key outline-minor-mode-map val outline-mode-prefix-map) (set-default sym val))) +(defvar outline-minor-mode-font-lock nil + "Enable outline font-lock in `outline-minor-mode'. +Non-nil value works well only when outline font-lock keywords +don't conflict with the major mode's font-lock keywords.") +;;;###autoload(put 'outline-minor-mode-font-lock 'safe-local-variable 'booleanp) +(defvar outline-minor-mode-cycle nil + "Enable heading cycle in `outline-minor-mode'. +When point is on a heading line, then typing 'TAB' cycles between `hide all', +`headings only' and `show all' (`outline-cycle'). Typing 'S-TAB' on +a heading line cycles the whole buffer (`outline-cycle-buffer'). +Typing these keys anywhere outside heading lines uses their default bindings.") +;;;###autoload(put 'outline-minor-mode-cycle 'safe-local-variable 'booleanp) + ;;;###autoload (define-minor-mode outline-minor-mode "Toggle Outline minor mode. @@ -314,6 +336,9 @@ outline-minor-mode (cons outline-minor-mode-prefix outline-mode-prefix-map)) (if outline-minor-mode (progn + (when outline-minor-mode-font-lock + (font-lock-add-keywords nil outline-font-lock-keywords) + (font-lock-flush)) ;; Turn off this mode if we change major modes. (add-hook 'change-major-mode-hook (lambda () (outline-minor-mode -1)) @@ -321,6 +346,9 @@ outline-minor-mode (setq-local line-move-ignore-invisible t) ;; Cause use of ellipses for invisible text. (add-to-invisibility-spec '(outline . t))) + (when outline-minor-mode-font-lock + (font-lock-remove-keywords nil outline-font-lock-keywords) + (font-lock-flush)) (setq line-move-ignore-invisible nil) ;; Cause use of ellipses for invisible text. (remove-from-invisibility-spec '(outline . t)) diff --git a/etc/compilation.txt b/etc/compilation.txt index 7e406389d4..5f28ca1d13 100644 --- a/etc/compilation.txt +++ b/etc/compilation.txt @@ -692,3 +692,11 @@ COPYING PERMISSIONS: You should have received a copy of the GNU General Public License along with this program. If not, see . + + +;;; Local Variables: +;;; outline-minor-mode-font-lock: t +;;; outline-minor-mode-cycle: t +;;; outline-regexp: "\\*\\_>" +;;; eval: (outline-minor-mode 1) +;;; End: diff --git a/etc/grep.txt b/etc/grep.txt index 19a3b4b47b..0f03609762 100644 --- a/etc/grep.txt +++ b/etc/grep.txt @@ -118,4 +123,7 @@ COPYING PERMISSIONS: ;;; Local Variables: ;;; eval: (let ((inhibit-read-only t) (compilation-filter-start (point-min))) (save-excursion (goto-char (point-max)) (grep-filter) (set-buffer-modified-p nil))) ;;; buffer-read-only: t +;;; outline-minor-mode-font-lock: t +;;; outline-minor-mode-cycle: t +;;; eval: (outline-minor-mode 1) ;;; End: --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Wed Dec 09 15:06:51 2020 Received: (at 45147) by debbugs.gnu.org; 9 Dec 2020 20:06:51 +0000 Received: from localhost ([127.0.0.1]:36228 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kn5jf-0007Ut-BZ for submit@debbugs.gnu.org; Wed, 09 Dec 2020 15:06:51 -0500 Received: from relay2-d.mail.gandi.net ([217.70.183.194]:38385) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kn5jd-0007Uf-Iw for 45147@debbugs.gnu.org; Wed, 09 Dec 2020 15:06:49 -0500 X-Originating-IP: 91.129.99.98 Received: from mail.gandi.net (m91-129-99-98.cust.tele2.ee [91.129.99.98]) (Authenticated sender: juri@linkov.net) by relay2-d.mail.gandi.net (Postfix) with ESMTPSA id 3BE1240006 for <45147@debbugs.gnu.org>; Wed, 9 Dec 2020 20:06:41 +0000 (UTC) From: Juri Linkov To: 45147@debbugs.gnu.org Subject: Re: bug#45147: Org-like cycling in outline-minor-mode References: <874kkuyhfx.fsf@mail.linkov.net> Date: Wed, 09 Dec 2020 22:03:15 +0200 In-Reply-To: <874kkuyhfx.fsf@mail.linkov.net> (Juri Linkov's message of "Wed, 09 Dec 2020 21:15:14 +0200") Message-ID: <87lfe6vjb0.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Debbugs-Envelope-To: 45147 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" --=-=-= Content-Type: text/plain > As suggested in bug#41198, here is a patch that adds > two new options (disabled by default): Here is a better patch. It makes possible to enable outline-minor-mode in any buffer, e.g. in prog mode, when outline-minor-mode-cycle is set to non-nil. Then typing S-TAB will collapse all headings, and TAB will expand the current function body, like this: --=-=-= Content-Type: image/png Content-Disposition: inline; filename=outline-minor-mode-cycle.png Content-Transfer-Encoding: base64 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 yf8B3RQHdWNDcMoAAAAASUVORK5CYII= --=-=-= Content-Type: text/x-diff Content-Disposition: inline; filename=outline-minor-mode-cycle-2.patch diff --git a/lisp/outline.el b/lisp/outline.el index 85f9de4e1b..67e1a5dcdc 100644 --- a/lisp/outline.el +++ b/lisp/outline.el @@ -175,10 +175,8 @@ outline-minor-mode-menu-bar-map outline-mode-menu-bar-map)))))) map)) -(defvar outline-mode-map +(defvar outline-mode-cycle-map (let ((map (make-sparse-keymap))) - (define-key map "\C-c" outline-mode-prefix-map) - (define-key map [menu-bar] outline-mode-menu-bar-map) ;; Only takes effect if point is on a heading. (define-key map (kbd "TAB") `(menu-item "" outline-cycle @@ -187,11 +185,27 @@ outline-mode-map (define-key map (kbd "") #'outline-cycle-buffer) map)) +(defvar outline-mode-map + (let ((map (make-sparse-keymap))) + (set-keymap-parent map outline-mode-cycle-map) + (define-key map "\C-c" outline-mode-prefix-map) + (define-key map [menu-bar] outline-mode-menu-bar-map) + map)) + (defvar outline-font-lock-keywords '( ;; Highlight headings according to the level. (eval . (list (concat "^\\(?:" outline-regexp "\\).+") - 0 '(outline-font-lock-face) nil t))) + 0 '(if outline-minor-mode-cycle + (if outline-minor-mode-font-lock + (list 'face (outline-font-lock-face) + 'local-map outline-mode-cycle-map) + (list 'face nil 'local-map outline-mode-cycle-map)) + (outline-font-lock-face)) + nil + (if (or outline-minor-mode-font-lock outline-minor-mode-cycle) + 'append + t)))) "Additional expressions to highlight in Outline mode.") (defface outline-1 @@ -305,6 +319,19 @@ outline-minor-mode-prefix (define-key outline-minor-mode-map val outline-mode-prefix-map) (set-default sym val))) +(defvar outline-minor-mode-font-lock nil + "Enable outline font-lock in `outline-minor-mode'. +Non-nil value works well only when outline font-lock keywords +don't conflict with the major mode's font-lock keywords.") +;;;###autoload(put 'outline-minor-mode-font-lock 'safe-local-variable 'booleanp) +(defvar outline-minor-mode-cycle nil + "Enable heading cycle in `outline-minor-mode'. +When point is on a heading line, then typing 'TAB' cycles between `hide all', +`headings only' and `show all' (`outline-cycle'). Typing 'S-TAB' on +a heading line cycles the whole buffer (`outline-cycle-buffer'). +Typing these keys anywhere outside heading lines uses their default bindings.") +;;;###autoload(put 'outline-minor-mode-cycle 'safe-local-variable 'booleanp) + ;;;###autoload (define-minor-mode outline-minor-mode "Toggle Outline minor mode. @@ -314,6 +341,9 @@ outline-minor-mode (cons outline-minor-mode-prefix outline-mode-prefix-map)) (if outline-minor-mode (progn + (when (or outline-minor-mode-font-lock outline-minor-mode-cycle) + (font-lock-add-keywords nil outline-font-lock-keywords) + (font-lock-flush)) ;; Turn off this mode if we change major modes. (add-hook 'change-major-mode-hook (lambda () (outline-minor-mode -1)) @@ -321,6 +351,9 @@ outline-minor-mode (setq-local line-move-ignore-invisible t) ;; Cause use of ellipses for invisible text. (add-to-invisibility-spec '(outline . t))) + (when (or outline-minor-mode-font-lock outline-minor-mode-cycle) + (font-lock-remove-keywords nil outline-font-lock-keywords) + (font-lock-flush)) (setq line-move-ignore-invisible nil) ;; Cause use of ellipses for invisible text. (remove-from-invisibility-spec '(outline . t)) --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Mon Dec 14 15:38:04 2020 Received: (at 45147) by debbugs.gnu.org; 14 Dec 2020 20:38:04 +0000 Received: from localhost ([127.0.0.1]:54663 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1koubb-0002uO-QG for submit@debbugs.gnu.org; Mon, 14 Dec 2020 15:38:04 -0500 Received: from relay10.mail.gandi.net ([217.70.178.230]:51203) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1koubZ-0002tR-B4; Mon, 14 Dec 2020 15:38:02 -0500 Received: from mail.gandi.net (m91-129-99-98.cust.tele2.ee [91.129.99.98]) (Authenticated sender: juri@linkov.net) by relay10.mail.gandi.net (Postfix) with ESMTPSA id 4DEFE240003; Mon, 14 Dec 2020 20:37:53 +0000 (UTC) From: Juri Linkov To: 45147@debbugs.gnu.org Subject: Re: bug#45147: Org-like cycling in outline-minor-mode Organization: LINKOV.NET References: <874kkuyhfx.fsf@mail.linkov.net> <87lfe6vjb0.fsf@mail.linkov.net> Date: Mon, 14 Dec 2020 22:35:44 +0200 In-Reply-To: <87lfe6vjb0.fsf@mail.linkov.net> (Juri Linkov's message of "Wed, 09 Dec 2020 22:03:15 +0200") Message-ID: <87zh2gyvkv.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 45147 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 (-) --=-=-= Content-Type: text/plain severity 45147 wishlist tags 45147 + patch quit >> As suggested in bug#41198, here is a patch that adds >> two new options (disabled by default): > > Here is a better patch. It makes possible to enable > outline-minor-mode in any buffer, e.g. in prog mode, > when outline-minor-mode-cycle is set to non-nil. > Then typing S-TAB will collapse all headings, and > TAB will expand the current function body, like this: This patch also allows using only outline-minor-mode-cycle without highlighting heading with outline-minor-mode-font-lock that is useful in prog-mode buffers: --=-=-= Content-Type: text/x-diff Content-Disposition: inline; filename=outline-minor-mode-cycle-3.patch diff --git a/lisp/outline.el b/lisp/outline.el index 85f9de4e1b..db10e2667f 100644 --- a/lisp/outline.el +++ b/lisp/outline.el @@ -175,23 +175,43 @@ outline-minor-mode-menu-bar-map outline-mode-menu-bar-map)))))) map)) +(defvar outline-mode-cycle-map + (let ((map (make-sparse-keymap))) + (let ((binding `(menu-item + "" outline-cycle + ;; Only takes effect if point is on a heading. + :filter ,(lambda (cmd) + (when (outline-on-heading-p) cmd))))) + (define-key map (kbd "TAB") binding) + (define-key map [tab] binding) + (define-key map (kbd "") #'outline-cycle-buffer)) + map)) + (defvar outline-mode-map (let ((map (make-sparse-keymap))) + (set-keymap-parent map outline-mode-cycle-map) (define-key map "\C-c" outline-mode-prefix-map) (define-key map [menu-bar] outline-mode-menu-bar-map) - ;; Only takes effect if point is on a heading. - (define-key map (kbd "TAB") - `(menu-item "" outline-cycle - :filter ,(lambda (cmd) - (when (outline-on-heading-p) cmd)))) - (define-key map (kbd "") #'outline-cycle-buffer) map)) (defvar outline-font-lock-keywords '( ;; Highlight headings according to the level. (eval . (list (concat "^\\(?:" outline-regexp "\\).+") - 0 '(outline-font-lock-face) nil t))) + 0 '(if outline-minor-mode-cycle + (if outline-minor-mode-font-lock + (list 'face (outline-font-lock-face) + 'local-map (make-composed-keymap + outline-mode-cycle-map + (current-local-map))) + (list 'face nil 'local-map (make-composed-keymap + outline-mode-cycle-map + (current-local-map)))) + (outline-font-lock-face)) + nil + (if (or outline-minor-mode-font-lock outline-minor-mode-cycle) + 'append + t)))) "Additional expressions to highlight in Outline mode.") (defface outline-1 @@ -305,6 +325,19 @@ outline-minor-mode-prefix (define-key outline-minor-mode-map val outline-mode-prefix-map) (set-default sym val))) +(defvar outline-minor-mode-font-lock nil + "Enable outline font-lock in `outline-minor-mode'. +Non-nil value works well only when outline font-lock keywords +don't conflict with the major mode's font-lock keywords.") +;;;###autoload(put 'outline-minor-mode-font-lock 'safe-local-variable 'booleanp) +(defvar outline-minor-mode-cycle nil + "Enable heading cycle in `outline-minor-mode'. +When point is on a heading line, then typing 'TAB' cycles between `hide all', +`headings only' and `show all' (`outline-cycle'). Typing 'S-TAB' on +a heading line cycles the whole buffer (`outline-cycle-buffer'). +Typing these keys anywhere outside heading lines uses their default bindings.") +;;;###autoload(put 'outline-minor-mode-cycle 'safe-local-variable 'booleanp) + ;;;###autoload (define-minor-mode outline-minor-mode "Toggle Outline minor mode. @@ -314,6 +347,9 @@ outline-minor-mode (cons outline-minor-mode-prefix outline-mode-prefix-map)) (if outline-minor-mode (progn + (when (or outline-minor-mode-font-lock outline-minor-mode-cycle) + (font-lock-add-keywords nil outline-font-lock-keywords) + (font-lock-flush)) ;; Turn off this mode if we change major modes. (add-hook 'change-major-mode-hook (lambda () (outline-minor-mode -1)) @@ -321,6 +357,9 @@ outline-minor-mode (setq-local line-move-ignore-invisible t) ;; Cause use of ellipses for invisible text. (add-to-invisibility-spec '(outline . t))) + (when (or outline-minor-mode-font-lock outline-minor-mode-cycle) + (font-lock-remove-keywords nil outline-font-lock-keywords) + (font-lock-flush)) (setq line-move-ignore-invisible nil) ;; Cause use of ellipses for invisible text. (remove-from-invisibility-spec '(outline . t)) --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Wed Dec 16 16:05:18 2020 Received: (at 45147) by debbugs.gnu.org; 16 Dec 2020 21:05:18 +0000 Received: from localhost ([127.0.0.1]:34013 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kpdz3-00047f-J7 for submit@debbugs.gnu.org; Wed, 16 Dec 2020 16:05:18 -0500 Received: from relay4-d.mail.gandi.net ([217.70.183.196]:57211) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kpdyx-000473-4G for 45147@debbugs.gnu.org; Wed, 16 Dec 2020 16:05:12 -0500 X-Originating-IP: 91.129.99.98 Received: from mail.gandi.net (m91-129-99-98.cust.tele2.ee [91.129.99.98]) (Authenticated sender: juri@linkov.net) by relay4-d.mail.gandi.net (Postfix) with ESMTPSA id 2365DE0003 for <45147@debbugs.gnu.org>; Wed, 16 Dec 2020 21:05:03 +0000 (UTC) From: Juri Linkov To: 45147@debbugs.gnu.org Subject: Re: bug#45147: Org-like cycling in outline-minor-mode Organization: LINKOV.NET References: <874kkuyhfx.fsf@mail.linkov.net> <87lfe6vjb0.fsf@mail.linkov.net> <87zh2gyvkv.fsf@mail.linkov.net> Date: Wed, 16 Dec 2020 22:28:51 +0200 In-Reply-To: <87zh2gyvkv.fsf@mail.linkov.net> (Juri Linkov's message of "Mon, 14 Dec 2020 22:35:44 +0200") Message-ID: <87r1npldlw.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 45147 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 (-) --=-=-= Content-Type: text/plain As proposed in bug#41198, here is the support for outline-minor-mode in the 'C-h b' Help buffer: --=-=-= Content-Type: text/x-diff Content-Disposition: inline; filename=outline-describe-bindings.patch diff --git a/lisp/help.el b/lisp/help.el index ac5c2f1311..be366439b8 100644 --- a/lisp/help.el +++ b/lisp/help.el @@ -509,7 +509,22 @@ describe-bindings ;; Be aware that `describe-buffer-bindings' puts its output into ;; the current buffer. (with-current-buffer (help-buffer) - (describe-buffer-bindings buffer prefix)))) + (describe-buffer-bindings buffer prefix) + + (setq-local outline-regexp ".*:$") + (setq-local outline-level (lambda () 1)) + (setq-local outline-minor-mode-cycle t) + (setq-local outline-minor-mode-highlight t) + (outline-minor-mode +1) + (save-excursion + (let ((inhibit-read-only t)) + (goto-char (point-min)) + (insert "Type TAB or S-TAB on headings to cycle their visibility.\n\n") + ;; Hide the longest body + (when (and (re-search-forward "Key translations" nil t) + (fboundp 'outline-cycle)) + (outline-cycle)))) + (font-lock-ensure)))) ;; This function used to be in keymap.c. (defun describe-bindings-internal (&optional menus prefix) And here is an updated outline.el: diff --git a/lisp/outline.el b/lisp/outline.el index 85f9de4e1b..97aba091c5 100644 --- a/lisp/outline.el +++ b/lisp/outline.el @@ -175,23 +175,40 @@ outline-minor-mode-menu-bar-map outline-mode-menu-bar-map)))))) map)) +(defvar outline-mode-cycle-map + (let ((map (make-sparse-keymap))) + (let ((binding `(menu-item + "" outline-cycle + ;; Only takes effect if point is on a heading. + :filter ,(lambda (cmd) + (when (outline-on-heading-p) cmd))))) + (define-key map (kbd "TAB") binding) + (define-key map [tab] binding) + (define-key map (kbd "") #'outline-cycle-buffer)) + map)) + (defvar outline-mode-map (let ((map (make-sparse-keymap))) + (set-keymap-parent map outline-mode-cycle-map) (define-key map "\C-c" outline-mode-prefix-map) (define-key map [menu-bar] outline-mode-menu-bar-map) - ;; Only takes effect if point is on a heading. - (define-key map (kbd "TAB") - `(menu-item "" outline-cycle - :filter ,(lambda (cmd) - (when (outline-on-heading-p) cmd)))) - (define-key map (kbd "") #'outline-cycle-buffer) map)) (defvar outline-font-lock-keywords '( ;; Highlight headings according to the level. - (eval . (list (concat "^\\(?:" outline-regexp "\\).+") - 0 '(outline-font-lock-face) nil t))) + (eval . (list (concat "^\\(?:" outline-regexp "\\)" + (if (string-match-p "\\$$" outline-regexp) + "" ".+")) + 0 '(if outline-minor-mode-cycle + (if outline-minor-mode-highlight + (list 'face (outline-font-lock-face) 'keymap outline-mode-cycle-map) + (list 'face nil 'keymap outline-mode-cycle-map)) + (outline-font-lock-face)) + nil + (if (or outline-minor-mode-highlight outline-minor-mode-cycle) + 'append + t)))) "Additional expressions to highlight in Outline mode.") (defface outline-1 @@ -305,6 +322,19 @@ outline-minor-mode-prefix (define-key outline-minor-mode-map val outline-mode-prefix-map) (set-default sym val))) +(defvar outline-minor-mode-highlight nil + "Highlight headings in `outline-minor-mode' using font-lock keywords. +Non-nil value works well only when outline font-lock keywords +don't conflict with the major mode's font-lock keywords.") +;;;###autoload(put 'outline-minor-mode-highlight 'safe-local-variable 'booleanp) +(defvar outline-minor-mode-cycle nil + "Enable heading cycle in `outline-minor-mode'. +When point is on a heading line, then typing 'TAB' cycles between `hide all', +`headings only' and `show all' (`outline-cycle'). Typing 'S-TAB' on +a heading line cycles the whole buffer (`outline-cycle-buffer'). +Typing these keys anywhere outside heading lines uses their default bindings.") +;;;###autoload(put 'outline-minor-mode-cycle 'safe-local-variable 'booleanp) + ;;;###autoload (define-minor-mode outline-minor-mode "Toggle Outline minor mode. @@ -314,6 +344,11 @@ outline-minor-mode (cons outline-minor-mode-prefix outline-mode-prefix-map)) (if outline-minor-mode (progn + (when (or outline-minor-mode-highlight outline-minor-mode-cycle) + (unless font-lock-defaults + (setq-local font-lock-defaults '(nil t))) + (font-lock-add-keywords nil outline-font-lock-keywords t) + (font-lock-flush)) ;; Turn off this mode if we change major modes. (add-hook 'change-major-mode-hook (lambda () (outline-minor-mode -1)) @@ -321,6 +356,9 @@ outline-minor-mode (setq-local line-move-ignore-invisible t) ;; Cause use of ellipses for invisible text. (add-to-invisibility-spec '(outline . t))) + (when (or outline-minor-mode-highlight outline-minor-mode-cycle) + (font-lock-remove-keywords nil outline-font-lock-keywords) + (font-lock-flush)) (setq line-move-ignore-invisible nil) ;; Cause use of ellipses for invisible text. (remove-from-invisibility-spec '(outline . t)) --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Wed Mar 03 14:14:58 2021 Received: (at 45147) by debbugs.gnu.org; 3 Mar 2021 19:14:58 +0000 Received: from localhost ([127.0.0.1]:57011 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lHWxW-0000Yi-JN for submit@debbugs.gnu.org; Wed, 03 Mar 2021 14:14:58 -0500 Received: from relay13.mail.gandi.net ([217.70.178.233]:44097) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lHWxU-0000Y5-At for 45147@debbugs.gnu.org; Wed, 03 Mar 2021 14:14:57 -0500 Received: from mail.gandi.net (m91-129-96-116.cust.tele2.ee [91.129.96.116]) (Authenticated sender: juri@linkov.net) by relay13.mail.gandi.net (Postfix) with ESMTPSA id BADCB80004 for <45147@debbugs.gnu.org>; Wed, 3 Mar 2021 19:14:49 +0000 (UTC) From: Juri Linkov To: 45147@debbugs.gnu.org Subject: Re: bug#45147: Org-like cycling in outline-minor-mode Organization: LINKOV.NET References: <874kkuyhfx.fsf@mail.linkov.net> Date: Wed, 03 Mar 2021 21:12:39 +0200 In-Reply-To: <874kkuyhfx.fsf@mail.linkov.net> (Juri Linkov's message of "Wed, 09 Dec 2020 21:15:14 +0200") Message-ID: <87wnuoaw60.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 45147 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 (-) > As suggested in bug#41198, here is a patch that adds > two new options (disabled by default): With no objections, new options (disabled by default) pushed to master. From debbugs-submit-bounces@debbugs.gnu.org Sun May 16 11:51:27 2021 Received: (at 45147) by debbugs.gnu.org; 16 May 2021 15:51:27 +0000 Received: from localhost ([127.0.0.1]:51355 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1liJ38-0000t4-W8 for submit@debbugs.gnu.org; Sun, 16 May 2021 11:51:27 -0400 Received: from quimby.gnus.org ([95.216.78.240]:48194) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1liJ37-0000sl-3x for 45147@debbugs.gnu.org; Sun, 16 May 2021 11:51:25 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Type:MIME-Version:Message-ID:In-Reply-To:Date: References:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=/ITIiOpSftoyguwe2/Oviz9SOvF6re4ujwO5yoSZoo4=; b=FbkELEMCAKgt165ozEYGO1WaUI sq4U+Pan0/VGr/EJ6hRGK0ACrrtvis7p3J++NhgAnWQcxlDgkpLll32s4q11h2XIWPh37pzeZoUD5 h30okVDFJ7Bk+cG40S21w/emdaIQcHpqsnYuneHYYl2USOmBn5aFt7nu+YEsYKfZxvNA=; Received: from cm-84.212.220.105.getinternet.no ([84.212.220.105] helo=xo) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1liJ2y-00007Y-RP; Sun, 16 May 2021 17:51:19 +0200 From: Lars Ingebrigtsen To: Juri Linkov Subject: Re: bug#45147: Org-like cycling in outline-minor-mode References: <874kkuyhfx.fsf@mail.linkov.net> <87wnuoaw60.fsf@mail.linkov.net> X-Now-Playing: Doubting Thomas's _Father Don't Cry_: "Turn A New Leaf" Date: Sun, 16 May 2021 17:51:16 +0200 In-Reply-To: <87wnuoaw60.fsf@mail.linkov.net> (Juri Linkov's message of "Wed, 03 Mar 2021 21:12:39 +0200") Message-ID: <87zgwullsb.fsf@gnus.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: Juri Linkov writes: >> As suggested in bug#41198, here is a patch that adds >> two new options (disabled by default): > > With no objections, new options (disabled by default) > pushed to master. Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 45147 Cc: 45147@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: -1.0 (-) Juri Linkov writes: >> As suggested in bug#41198, here is a patch that adds >> two new options (disabled by default): > > With no objections, new options (disabled by default) > pushed to master. Skimming this thread, I'm not quite sure whether there's anything more to be done here? The first message mentioned > - outline-minor-mode-font-lock that enables outline font-lock in > outline-minor-mode which does not seem to exist, but I'm not sure whether the second version made that unnecessary... -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no From debbugs-submit-bounces@debbugs.gnu.org Sun May 16 14:27:39 2021 Received: (at 45147) by debbugs.gnu.org; 16 May 2021 18:27:39 +0000 Received: from localhost ([127.0.0.1]:51466 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1liLUI-0002pC-Rp for submit@debbugs.gnu.org; Sun, 16 May 2021 14:27:39 -0400 Received: from relay8-d.mail.gandi.net ([217.70.183.201]:35805) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1liLUG-0002ok-MA for 45147@debbugs.gnu.org; Sun, 16 May 2021 14:27:37 -0400 Received: (Authenticated sender: juri@linkov.net) by relay8-d.mail.gandi.net (Postfix) with ESMTPSA id D8A211BF203; Sun, 16 May 2021 18:27:28 +0000 (UTC) From: Juri Linkov To: Lars Ingebrigtsen Subject: Re: bug#45147: Org-like cycling in outline-minor-mode Organization: LINKOV.NET References: <874kkuyhfx.fsf@mail.linkov.net> <87wnuoaw60.fsf@mail.linkov.net> <87zgwullsb.fsf@gnus.org> Date: Sun, 16 May 2021 20:53:49 +0300 In-Reply-To: <87zgwullsb.fsf@gnus.org> (Lars Ingebrigtsen's message of "Sun, 16 May 2021 17:51:16 +0200") Message-ID: <87im3i7efm.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 45147 Cc: 45147@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: -1.7 (-) >>> As suggested in bug#41198, here is a patch that adds >>> two new options (disabled by default): >> >> With no objections, new options (disabled by default) >> pushed to master. > > Skimming this thread, I'm not quite sure whether there's anything more > to be done here? The first message mentioned There is still an unpushed patch outline-describe-bindings.patch in https://debbugs.gnu.org/45147#18 that will enable outline-minor-mode on the output of describe-bindings. I waited when the speed of describe-bindings will be improved in bug#45379, but maybe this patch could be pushed nevertheless. >> - outline-minor-mode-font-lock that enables outline font-lock in >> outline-minor-mode > > which does not seem to exist, but I'm not sure whether the second > version made that unnecessary... outline-minor-mode-font-lock was renamed to outline-minor-mode-highlight. From debbugs-submit-bounces@debbugs.gnu.org Mon May 17 09:57:47 2021 Received: (at 45147) by debbugs.gnu.org; 17 May 2021 13:57:47 +0000 Received: from localhost ([127.0.0.1]:53277 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lidkg-0002Mi-V6 for submit@debbugs.gnu.org; Mon, 17 May 2021 09:57:47 -0400 Received: from quimby.gnus.org ([95.216.78.240]:57888) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lidkb-0002MG-Qs for 45147@debbugs.gnu.org; Mon, 17 May 2021 09:57:45 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Type:MIME-Version:Message-ID:In-Reply-To:Date: References:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=QPR2+zkHvCbgkCpG4q2JAfFA68ELdRd62el/auUleCA=; b=oeAL3++qI5zqDNX5ijp3Q6nhFo 3CzFjacBt9+viJPhMjTupn3Njbz/qDIOsYubHcpKIlNRDJNejV8pWtkbQbpWLwAr4YzGTnwu6PsUv QnKz3gO+I7HRgGwHDTWLHP0iRPIjVQ3jzHRNX/BoqNx8Qew7jViyVRC+9UlVqtEVZxnQ=; Received: from cm-84.212.220.105.getinternet.no ([84.212.220.105] helo=xo) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1lidkT-0008Th-HK; Mon, 17 May 2021 15:57:35 +0200 From: Lars Ingebrigtsen To: Juri Linkov Subject: Re: bug#45147: Org-like cycling in outline-minor-mode References: <874kkuyhfx.fsf@mail.linkov.net> <87wnuoaw60.fsf@mail.linkov.net> <87zgwullsb.fsf@gnus.org> <87im3i7efm.fsf@mail.linkov.net> Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAABGdBTUEAALGPC/xhBQAAACBj SFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAGFBMVEVIbDtPakO1k4Fh VTidTDe6PjlIUD////+9YGZ5AAAAAWJLR0QHFmGI6wAAAAd0SU1FB+UFEQ01Gv2TN4QAAAGlSURB VDjLdZNBb+sgDMed0fWcbNLOT920c/RMOFcCen5S8D0Trb//R3g27RZIO6tExj//bZNQgG4oBl0/ dEMPALrkMWysl8QOYLgC8cTpb6DXjaxeHtBJKflJrFOnk5guFTyV2ppyLSVpr7p/OUANygCvYwE3 xWoDWIkdDn/uQG+S+zr8/XRtXEexc0ZEXrAhOqNjRp9d2JQCMMwcEPOmuYI3jh5Ll2ND2QY6cekx N2CPuJjMi7i2CuMIGSVoji2IRC57vpVZZ94RUToHrymI4w/orQAKgRajWlqbT6oIRGhDpERjVUr3 wkSaKK0vC2Kk+VKA8EoBONEpS5egzag++TPNbxd/jW9AOp1LPEX6VwE5SYglfZZ2fgXmB+h0qZJE iqEEy+THSiF7H1W0ObtsE9jvgmsTNGikso3JUXNETZl0eSfiaip1n0cwclF2Y/VKCtid3BktLs1d 0DJm5gsFxw0wRYbTzF/cXhL9kB4xyL3zWwApO7m/jHdg3Ctx070EsuMAOR7vCZj32/Bb230oHR+A kv0A7JfyLL783x/brwB+BY/tP0rubGCTDWEYAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDIxLTA1LTE3 VDEzOjUzOjI2KzAwOjAwxDEUAAAAACV0RVh0ZGF0ZTptb2RpZnkAMjAyMS0wNS0xN1QxMzo1Mzoy NiswMDowMLVsrLwAAAAASUVORK5CYII= X-Now-Playing: Jay Glass Dubs's _Nyx_: "The Controversial Control" Date: Mon, 17 May 2021 15:57:33 +0200 In-Reply-To: <87im3i7efm.fsf@mail.linkov.net> (Juri Linkov's message of "Sun, 16 May 2021 20:53:49 +0300") Message-ID: <87cztplaya.fsf@gnus.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: Juri Linkov writes: > There is still an unpushed patch outline-describe-bindings.patch in > https://debbugs.gnu.org/45147#18 that will enable outline-minor-mode > on the output of describe-bindings. I waited when the spe [...] Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 45147 Cc: 45147@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: -1.0 (-) Juri Linkov writes: > There is still an unpushed patch outline-describe-bindings.patch in > https://debbugs.gnu.org/45147#18 that will enable outline-minor-mode > on the output of describe-bindings. I waited when the speed of > describe-bindings will be improved in bug#45379, but maybe > this patch could be pushed nevertheless. I think you could push it anyway... but I think enabling outline mode (by default) in describe-bindings would be controversial, so I think there should be a user option for that behaviour. -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no From debbugs-submit-bounces@debbugs.gnu.org Tue May 18 16:27:27 2021 Received: (at 45147) by debbugs.gnu.org; 18 May 2021 20:27:27 +0000 Received: from localhost ([127.0.0.1]:57400 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lj6JL-0000Ls-8J for submit@debbugs.gnu.org; Tue, 18 May 2021 16:27:27 -0400 Received: from relay6-d.mail.gandi.net ([217.70.183.198]:58793) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lj6JJ-0000Lc-QD for 45147@debbugs.gnu.org; Tue, 18 May 2021 16:27:26 -0400 Received: (Authenticated sender: juri@linkov.net) by relay6-d.mail.gandi.net (Postfix) with ESMTPSA id 4E8D6C0005; Tue, 18 May 2021 20:27:17 +0000 (UTC) From: Juri Linkov To: Lars Ingebrigtsen Subject: Re: bug#45147: Org-like cycling in outline-minor-mode Organization: LINKOV.NET References: <874kkuyhfx.fsf@mail.linkov.net> <87wnuoaw60.fsf@mail.linkov.net> <87zgwullsb.fsf@gnus.org> <87im3i7efm.fsf@mail.linkov.net> <87cztplaya.fsf@gnus.org> Date: Tue, 18 May 2021 23:12:46 +0300 In-Reply-To: <87cztplaya.fsf@gnus.org> (Lars Ingebrigtsen's message of "Mon, 17 May 2021 15:57:33 +0200") Message-ID: <87y2cc0xeh.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 45147 Cc: 45147@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: -1.7 (-) --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit > I think you could push it anyway... but I think enabling outline mode > (by default) in describe-bindings would be controversial, so I think > there should be a user option for that behaviour. This patch adds a new user option ‘describe-bindings-after-hook’ (and also removes ‘describe-bindings-internal’ obsolete since 24.4): --=-=-= Content-Type: text/x-diff Content-Disposition: inline; filename=describe-bindings-after-hook.patch diff --git a/lisp/help.el b/lisp/help.el index babaf4adc7..7caf080dca 100644 --- a/lisp/help.el +++ b/lisp/help.el @@ -561,6 +561,13 @@ help--key-description-fontified 'font-lock-face 'help-key-binding 'face 'help-key-binding)) +(defcustom describe-bindings-after-hook '(describe-bindings-outline) + "Hook run at the end of `describe-bindings'." + :type 'hook + :options '(describe-bindings-outline) + :group 'help + :version "28.1") + (defun describe-bindings (&optional prefix buffer) "Display a buffer showing a list of all defined keys, and their definitions. The keys are displayed in order of precedence. @@ -578,23 +585,26 @@ describe-bindings ;; Be aware that `describe-buffer-bindings' puts its output into ;; the current buffer. (with-current-buffer (help-buffer) - (describe-buffer-bindings buffer prefix)))) + (describe-buffer-bindings buffer prefix) + (run-hooks 'describe-bindings-after-hook)))) -(defun describe-bindings-internal (&optional menus prefix) - "Show a list of all defined keys, and their definitions. -We put that list in a buffer, and display the buffer. - -The optional argument MENUS, if non-nil, says to mention menu bindings. -\(Ordinarily these are omitted from the output.) -The optional argument PREFIX, if non-nil, should be a key sequence; -then we display only bindings that start with that prefix." - (declare (obsolete describe-buffer-bindings "24.4")) - (let ((buf (current-buffer))) - (with-help-window (help-buffer) - ;; Be aware that `describe-buffer-bindings' puts its output into - ;; the current buffer. - (with-current-buffer (help-buffer) - (describe-buffer-bindings buf prefix menus))))) +(defun describe-bindings-outline () + "Hook to enable outlines in the output buffer of `describe-bindings'." + (setq-local outline-regexp ".*:$") + (setq-local outline-heading-end-regexp ":\n") + (setq-local outline-level (lambda () 1)) + (setq-local outline-minor-mode-cycle t + outline-minor-mode-highlight t) + (outline-minor-mode 1) + (save-excursion + (let ((inhibit-read-only t)) + (goto-char (point-min)) + (insert (substitute-command-keys + "\\Type \\[outline-cycle] or \\[outline-cycle-buffer] on headings to cycle their visibility.\n\n")) + ;; Hide the longest body + (when (and (re-search-forward "Key translations" nil t) + (fboundp 'outline-cycle)) + (outline-cycle))))) (defun where-is (definition &optional insert) "Print message listing key sequences that invoke the command DEFINITION. --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Wed May 19 08:10:36 2021 Received: (at 45147) by debbugs.gnu.org; 19 May 2021 12:10:36 +0000 Received: from localhost ([127.0.0.1]:58319 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ljL24-0005I3-Do for submit@debbugs.gnu.org; Wed, 19 May 2021 08:10:36 -0400 Received: from eggs.gnu.org ([209.51.188.92]:57834) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ljL23-0005Hq-1O for 45147@debbugs.gnu.org; Wed, 19 May 2021 08:10:35 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:46218) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ljL1v-0001qi-OU; Wed, 19 May 2021 08:10:28 -0400 Received: from 84.94.185.95.cable.012.net.il ([84.94.185.95]:3971 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 1ljL1v-0007ma-9d; Wed, 19 May 2021 08:10:27 -0400 Date: Wed, 19 May 2021 15:10:37 +0300 Message-Id: <8335uirkjm.fsf@gnu.org> From: Eli Zaretskii To: Juri Linkov In-Reply-To: <87y2cc0xeh.fsf@mail.linkov.net> (message from Juri Linkov on Tue, 18 May 2021 23:12:46 +0300) Subject: Re: bug#45147: Org-like cycling in outline-minor-mode References: <874kkuyhfx.fsf@mail.linkov.net> <87wnuoaw60.fsf@mail.linkov.net> <87zgwullsb.fsf@gnus.org> <87im3i7efm.fsf@mail.linkov.net> <87cztplaya.fsf@gnus.org> <87y2cc0xeh.fsf@mail.linkov.net> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 45147 Cc: larsi@gnus.org, 45147@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 (---) > From: Juri Linkov > Date: Tue, 18 May 2021 23:12:46 +0300 > Cc: 45147@debbugs.gnu.org > > +(defcustom describe-bindings-after-hook '(describe-bindings-outline) > + "Hook run at the end of `describe-bindings'." > + :type 'hook > + :options '(describe-bindings-outline) > + :group 'help > + :version "28.1") What's the rationale for populating the hook by default? That's not what we normally do: hooks are for Lisp programs to use, not for the core functionality to invoke itself. > +(defun describe-bindings-outline () > + "Hook to enable outlines in the output buffer of `describe-bindings'." First, this is not a hook. And second, if we want a feature whereby the buffer describing bindings could be put in Outline mode, why not offer a simple option for users to customize, not a hook for users to tweak? Once again, having user options that accept only function values is user-unfriendly. Thanks. From debbugs-submit-bounces@debbugs.gnu.org Wed May 19 12:32:00 2021 Received: (at 45147) by debbugs.gnu.org; 19 May 2021 16:32:00 +0000 Received: from localhost ([127.0.0.1]:60566 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ljP71-0000CP-UJ for submit@debbugs.gnu.org; Wed, 19 May 2021 12:32:00 -0400 Received: from relay10.mail.gandi.net ([217.70.178.230]:42621) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ljP6z-0000Bu-2M for 45147@debbugs.gnu.org; Wed, 19 May 2021 12:31:57 -0400 Received: (Authenticated sender: juri@linkov.net) by relay10.mail.gandi.net (Postfix) with ESMTPSA id 6B8B824000E; Wed, 19 May 2021 16:31:50 +0000 (UTC) From: Juri Linkov To: Eli Zaretskii Subject: Re: bug#45147: Org-like cycling in outline-minor-mode Organization: LINKOV.NET References: <874kkuyhfx.fsf@mail.linkov.net> <87wnuoaw60.fsf@mail.linkov.net> <87zgwullsb.fsf@gnus.org> <87im3i7efm.fsf@mail.linkov.net> <87cztplaya.fsf@gnus.org> <87y2cc0xeh.fsf@mail.linkov.net> <8335uirkjm.fsf@gnu.org> Date: Wed, 19 May 2021 19:14:47 +0300 In-Reply-To: <8335uirkjm.fsf@gnu.org> (Eli Zaretskii's message of "Wed, 19 May 2021 15:10:37 +0300") Message-ID: <87y2cayfmw.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 45147 Cc: larsi@gnus.org, 45147@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: -1.7 (-) --=-=-= Content-Type: text/plain >> +(defcustom describe-bindings-after-hook '(describe-bindings-outline) >> + "Hook run at the end of `describe-bindings'." >> + :type 'hook >> + :options '(describe-bindings-outline) >> + :group 'help >> + :version "28.1") > > What's the rationale for populating the hook by default? That's not > what we normally do: hooks are for Lisp programs to use, not for the > core functionality to invoke itself. This was an attempt of generalization. >> +(defun describe-bindings-outline () >> + "Hook to enable outlines in the output buffer of `describe-bindings'." > > First, this is not a hook. > > And second, if we want a feature whereby the buffer describing > bindings could be put in Outline mode, why not offer a simple option > for users to customize, not a hook for users to tweak? Once again, > having user options that accept only function values is > user-unfriendly. Function values are user-friendly when their defcustom provides human-readable tags. But in this case it's fine to have a simple option like in this patch: --=-=-= Content-Type: text/x-diff Content-Disposition: inline; filename=describe-bindings-outline.patch diff --git a/lisp/help.el b/lisp/help.el index babaf4adc7..2409636b48 100644 --- a/lisp/help.el +++ b/lisp/help.el @@ -561,6 +561,12 @@ help--key-description-fontified 'font-lock-face 'help-key-binding 'face 'help-key-binding)) +(defcustom describe-bindings-outline t + "Non-nil enables outlines in the output buffer of `describe-bindings'." + :type 'boolean + :group 'help + :version "28.1") + (defun describe-bindings (&optional prefix buffer) "Display a buffer showing a list of all defined keys, and their definitions. The keys are displayed in order of precedence. @@ -578,7 +584,26 @@ describe-bindings ;; Be aware that `describe-buffer-bindings' puts its output into ;; the current buffer. (with-current-buffer (help-buffer) - (describe-buffer-bindings buffer prefix)))) + (describe-buffer-bindings buffer prefix) + + (when describe-bindings-outline + (setq-local outline-regexp ".*:$") + (setq-local outline-heading-end-regexp ":\n") + (setq-local outline-level (lambda () 1)) + (setq-local outline-minor-mode-cycle t + outline-minor-mode-highlight t) + (outline-minor-mode 1) + (save-excursion + (let ((inhibit-read-only t)) + (goto-char (point-min)) + (insert (substitute-command-keys + (concat "\\Type " + "\\[outline-cycle] or \\[outline-cycle-buffer] " + "on headings to cycle their visibility.\n\n"))) + ;; Hide the longest body + (when (and (re-search-forward "Key translations" nil t) + (fboundp 'outline-cycle)) + (outline-cycle)))))))) (defun describe-bindings-internal (&optional menus prefix) "Show a list of all defined keys, and their definitions. --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Wed May 19 13:28:53 2021 Received: (at 45147) by debbugs.gnu.org; 19 May 2021 17:28:53 +0000 Received: from localhost ([127.0.0.1]:60609 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ljQ05-0001kl-5R for submit@debbugs.gnu.org; Wed, 19 May 2021 13:28:53 -0400 Received: from eggs.gnu.org ([209.51.188.92]:58898) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ljQ03-0001kY-Tw for 45147@debbugs.gnu.org; Wed, 19 May 2021 13:28:52 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:57078) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ljPzy-0004Nv-4c; Wed, 19 May 2021 13:28:46 -0400 Received: from 84.94.185.95.cable.012.net.il ([84.94.185.95]:4405 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 1ljPzx-0005Wx-GF; Wed, 19 May 2021 13:28:45 -0400 Date: Wed, 19 May 2021 20:28:52 +0300 Message-Id: <83lf8apr8r.fsf@gnu.org> From: Eli Zaretskii To: Juri Linkov In-Reply-To: <87y2cayfmw.fsf@mail.linkov.net> (message from Juri Linkov on Wed, 19 May 2021 19:14:47 +0300) Subject: Re: bug#45147: Org-like cycling in outline-minor-mode References: <874kkuyhfx.fsf@mail.linkov.net> <87wnuoaw60.fsf@mail.linkov.net> <87zgwullsb.fsf@gnus.org> <87im3i7efm.fsf@mail.linkov.net> <87cztplaya.fsf@gnus.org> <87y2cc0xeh.fsf@mail.linkov.net> <8335uirkjm.fsf@gnu.org> <87y2cayfmw.fsf@mail.linkov.net> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 45147 Cc: larsi@gnus.org, 45147@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 (---) > From: Juri Linkov > Cc: larsi@gnus.org, 45147@debbugs.gnu.org > Date: Wed, 19 May 2021 19:14:47 +0300 > > > And second, if we want a feature whereby the buffer describing > > bindings could be put in Outline mode, why not offer a simple option > > for users to customize, not a hook for users to tweak? Once again, > > having user options that accept only function values is > > user-unfriendly. > > Function values are user-friendly when their defcustom provides > human-readable tags. Only if the user uses Customize, not if he/she uses Lisp, or the interactive set-variable command. > But in this case it's fine to have a simple option like in this patch: Thanks, this is much better. From debbugs-submit-bounces@debbugs.gnu.org Thu May 20 14:37:47 2021 Received: (at 45147) by debbugs.gnu.org; 20 May 2021 18:37:47 +0000 Received: from localhost ([127.0.0.1]:35199 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ljnYJ-0006IV-Ed for submit@debbugs.gnu.org; Thu, 20 May 2021 14:37:47 -0400 Received: from relay11.mail.gandi.net ([217.70.178.231]:54855) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ljnYF-0006I8-Ni; Thu, 20 May 2021 14:37:45 -0400 Received: (Authenticated sender: juri@linkov.net) by relay11.mail.gandi.net (Postfix) with ESMTPSA id C8272100005; Thu, 20 May 2021 18:37:35 +0000 (UTC) From: Juri Linkov To: Eli Zaretskii Subject: Re: bug#45147: Org-like cycling in outline-minor-mode Organization: LINKOV.NET References: <874kkuyhfx.fsf@mail.linkov.net> <87wnuoaw60.fsf@mail.linkov.net> <87zgwullsb.fsf@gnus.org> <87im3i7efm.fsf@mail.linkov.net> <87cztplaya.fsf@gnus.org> <87y2cc0xeh.fsf@mail.linkov.net> <8335uirkjm.fsf@gnu.org> <87y2cayfmw.fsf@mail.linkov.net> <83lf8apr8r.fsf@gnu.org> Date: Thu, 20 May 2021 21:37:18 +0300 In-Reply-To: <83lf8apr8r.fsf@gnu.org> (Eli Zaretskii's message of "Wed, 19 May 2021 20:28:52 +0300") Message-ID: <87y2c99rq9.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 45147 Cc: larsi@gnus.org, 45147@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: -1.7 (-) tags 45147 fixed close 45147 28.0.50 quit >> But in this case it's fine to have a simple option like in this patch: > > Thanks, this is much better. So now pushed to master and closed. From unknown Mon Sep 08 13:01:36 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Fri, 18 Jun 2021 11:24:07 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator