From unknown Thu Aug 14 21:44:56 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#3921 <3921@debbugs.gnu.org> To: bug#3921 <3921@debbugs.gnu.org> Subject: Status: 23.1.50; checkdoc allow uncapitalized info node links Reply-To: bug#3921 <3921@debbugs.gnu.org> Date: Fri, 15 Aug 2025 04:44:56 +0000 retitle 3921 23.1.50; checkdoc allow uncapitalized info node links reassign 3921 emacs submitter 3921 Kevin Ryde severity 3921 normal thanks From gg@zip.com.au Fri Jul 24 16:00:44 2009 Received: (at submit) by emacsbugs.donarmstrong.com; 24 Jul 2009 23:00:44 +0000 X-Spam-Checker-Version: SpamAssassin 3.2.5-bugs.debian.org_2005_01_02 (2008-06-10) on rzlab.ucr.edu X-Spam-Level: X-Spam-Bayes: score:0.5 Bayes not run. spammytokens:Tokens not available. hammytokens:Tokens not available. X-Spam-Status: No, score=-1.4 required=4.0 tests=AWL,FOURLA autolearn=no version=3.2.5-bugs.debian.org_2005_01_02 Received: from fencepost.gnu.org (fencepost.gnu.org [140.186.70.10]) by rzlab.ucr.edu (8.14.3/8.14.3/Debian-5) with ESMTP id n6ON0c1U004037 for ; Fri, 24 Jul 2009 16:00:40 -0700 Received: from mx10.gnu.org ([199.232.76.166]:39663) by fencepost.gnu.org with esmtp (Exim 4.67) (envelope-from ) id 1MUTkk-0004p8-BP for emacs-pretest-bug@gnu.org; Fri, 24 Jul 2009 19:00:38 -0400 Received: from Debian-exim by monty-python.gnu.org with spam-scanned (Exim 4.60) (envelope-from ) id 1MUTkh-0005qR-Qa for emacs-pretest-bug@gnu.org; Fri, 24 Jul 2009 19:00:38 -0400 Received: from mx20.gnu.org ([199.232.41.8]:22895) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1MUTkh-0005pd-ET for emacs-pretest-bug@gnu.org; Fri, 24 Jul 2009 19:00:35 -0400 Received: from mailout1-1.pacific.net.au ([61.8.2.208] helo=mailout1.pacific.net.au) by mx20.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1MUTkd-0002BK-GK for emacs-pretest-bug@gnu.org; Fri, 24 Jul 2009 19:00:32 -0400 Received: from mailproxy1.pacific.net.au (mailproxy1.pacific.net.au [61.8.2.162]) by mailout1.pacific.net.au (Postfix) with ESMTP id 922434FCFA4 for ; Sat, 25 Jul 2009 09:00:25 +1000 (EST) Received: from blah.blah (ppp2E29.dyn.pacific.net.au [61.8.46.41]) by mailproxy1.pacific.net.au (Postfix) with ESMTP id A9FDA8C2A for ; Sat, 25 Jul 2009 09:00:24 +1000 (EST) Received: from gg by blah.blah with local (Exim 4.69) (envelope-from ) id 1MUTk8-0001Cb-QY for emacs-pretest-bug@gnu.org; Sat, 25 Jul 2009 09:00:00 +1000 From: Kevin Ryde To: emacs-pretest-bug@gnu.org Subject: 23.1.50; checkdoc allow uncapitalized info node links Date: Sat, 25 Jul 2009 09:00:00 +1000 Message-ID: <873a8ln0un.fsf@blah.blah> User-Agent: Gnus/5.110011 (No Gnus v0.11) Emacs/22.3 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Detected-Operating-System: by mx20.gnu.org: GNU/Linux 2.6, seldom 2.4 (older, 4) X-detected-operating-system: by monty-python.gnu.org: Genre and OS details not recognized. --=-=-= M-x checkdoc on the file foo.el below complains Name emacs should appear capitalized as Emacs (C-h,f,e,n,p,q) at the `(emacs)' info link. I hoped it would recognise that has to be left as-is, since it must follow the target document's name and nodes. Perhaps the following, dragging in help-mode.el for a definitive regexp, and using thingatpt.el just because it's a convenient way to match surrounding point. 2009-07-25 Kevin Ryde * emacs-lisp/checkdoc.el (checkdoc-proper-noun-region-engine): Allow uncapitalized in info node hyperlinks. --=-=-= Content-Type: application/emacs-lisp Content-Disposition: attachment; filename=foo.el ;;; foo.el --- blah ;;; Commentary: ;;; History: ;;; Code: (defun foo () "Blah blah. See Info node `(emacs)Usual Display Conventions'." 123) (provide 'foo) ;;; foo.el ends here --=-=-= Content-Type: text/x-diff Content-Disposition: attachment; filename=checkdoc.el.info-link.diff *** checkdoc.el 23 Jul 2009 07:41:51 +1000 1.72 --- checkdoc.el 25 Jul 2009 08:53:18 +1000 *************** *** 173,178 **** --- 173,181 ---- (defvar checkdoc-version "0.6.1" "Release version of checkdoc you are currently running.") + (require 'help-mode) ;; for help-xref-info-regexp + (require 'thingatpt) ;; for handy thing-at-point-looking-at + (defvar compilation-error-regexp-alist) (defvar compilation-mode-font-lock-keywords) *************** *** 2003,2009 **** ;; surrounded by /, as in a URL or filename: /emacs/ (not (and (= ?/ (char-after e)) (= ?/ (char-before b)))) ! (not (checkdoc-in-example-string-p begin end))) (if (checkdoc-autofix-ask-replace b e (format "Text %s should be capitalized. Fix? " text) --- 2006,2015 ---- ;; surrounded by /, as in a URL or filename: /emacs/ (not (and (= ?/ (char-after e)) (= ?/ (char-before b)))) ! (not (checkdoc-in-example-string-p begin end)) ! ;; "Info node `(emacs)Commands'" etc is ok ! (not (thing-at-point-looking-at ! help-xref-info-regexp))) (if (checkdoc-autofix-ask-replace b e (format "Text %s should be capitalized. Fix? " text) --=-=-= In GNU Emacs 23.1.50.4 (i586-pc-linux-gnu, GTK+ Version 2.16.4) of 2009-07-24 on blah.blah configured using `configure 'CFLAGS=-O -g' '--prefix=/down/emacs/b/inst' '--with-x-toolkit=gtk'' Important settings: value of $LC_ALL: nil value of $LC_COLLATE: nil value of $LC_CTYPE: nil value of $LC_MESSAGES: nil value of $LC_MONETARY: nil value of $LC_NUMERIC: nil value of $LC_TIME: nil value of $LANG: en_AU value of $XMODIFIERS: nil locale-coding-system: iso-latin-1-unix default-enable-multibyte-characters: t --=-=-=-- From cyd@stupidchicken.com Fri Oct 23 10:28:05 2009 Received: (at 3921-done) by emacsbugs.donarmstrong.com; 23 Oct 2009 17:28:06 +0000 X-Spam-Checker-Version: SpamAssassin 3.2.5-bugs.debian.org_2005_01_02 (2008-06-10) on rzlab.ucr.edu X-Spam-Level: X-Spam-Bayes: score:0.5 Bayes not run. spammytokens:Tokens not available. hammytokens:Tokens not available. X-Spam-Status: No, score=-0.4 required=4.0 tests=AWL autolearn=ham version=3.2.5-bugs.debian.org_2005_01_02 Received: from pantheon-po43.its.yale.edu (pantheon-po43.its.yale.edu [130.132.50.104]) by rzlab.ucr.edu (8.14.3/8.14.3/Debian-5) with ESMTP id n9NHS4bp031283 for <3921-done@emacsbugs.donarmstrong.com>; Fri, 23 Oct 2009 10:28:05 -0700 Received: from furry (dhcp128036014244.central.yale.edu [128.36.14.244]) (authenticated bits=0) by pantheon-po43.its.yale.edu (8.12.11.20060308/8.12.11) with ESMTP id n9NHRwMI012092 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Fri, 23 Oct 2009 13:27:58 -0400 Received: by furry (Postfix, from userid 1000) id 4E983C070; Fri, 23 Oct 2009 13:27:58 -0400 (EDT) From: Chong Yidong To: Kevin Ryde Cc: 3921-done@debbugs.gnu.org Subject: Re: 23.1.50; checkdoc allow uncapitalized info node links Date: Fri, 23 Oct 2009 13:27:58 -0400 Message-ID: <87hbtq81gh.fsf@stupidchicken.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-YaleITSMailFilter: Version 1.2c (attachment(s) not renamed) > M-x checkdoc on the file foo.el below complains > > Name emacs should appear capitalized as Emacs (C-h,f,e,n,p,q) > > at the `(emacs)' info link. I hoped it would recognise that has to be > left as-is, since it must follow the target document's name and nodes. > > Perhaps the following, dragging in help-mode.el for a definitive regexp, > and using thingatpt.el just because it's a convenient way to match > surrounding point. I checked in a slightly different fix. Thanks for the bug report. From gg@zip.com.au Sat Oct 24 16:38:56 2009 Received: (at 3921) by emacsbugs.donarmstrong.com; 24 Oct 2009 23:38:57 +0000 X-Spam-Checker-Version: SpamAssassin 3.2.5-bugs.debian.org_2005_01_02 (2008-06-10) on rzlab.ucr.edu X-Spam-Level: X-Spam-Bayes: score:0.5 Bayes not run. spammytokens:Tokens not available. hammytokens:Tokens not available. X-Spam-Status: No, score=-1.9 required=4.0 tests=AWL,MDO_DATING2, VALID_BTS_CONTROL autolearn=ham version=3.2.5-bugs.debian.org_2005_01_02 Received: from mailout2.pacific.net.au (mailout2-5.pacific.net.au [61.8.2.228]) by rzlab.ucr.edu (8.14.3/8.14.3/Debian-5) with ESMTP id n9ONcsso001491; Sat, 24 Oct 2009 16:38:56 -0700 Received: from mailproxy1.pacific.net.au (mailproxy1.pacific.net.au [61.8.2.162]) by mailout2.pacific.net.au (Postfix) with ESMTP id E3B16193322; Sun, 25 Oct 2009 10:38:53 +1100 (EST) Received: from blah.blah (ppp2E1F.dyn.pacific.net.au [61.8.46.31]) by mailproxy1.pacific.net.au (Postfix) with ESMTP id 282CC8C04; Sun, 25 Oct 2009 10:38:51 +1100 (EST) Received: from gg by blah.blah with local (Exim 4.69) (envelope-from ) id 1N1qBn-000302-Q1; Sun, 25 Oct 2009 10:38:27 +1100 From: Kevin Ryde To: 3921@debbugs.gnu.org, control@debbugs.gnu.org Cc: Chong Yidong Subject: Re: 23.1.50; checkdoc allow uncapitalized info node links References: <87hbtq81gh.fsf@stupidchicken.com> Date: Sun, 25 Oct 2009 10:38:26 +1100 In-Reply-To: <87hbtq81gh.fsf@stupidchicken.com> (Chong Yidong's message of "Fri, 23 Oct 2009 13:27:58 -0400") Message-ID: <87fx98z7kd.fsf@blah.blah> User-Agent: Gnus/5.110011 (No Gnus v0.11) Emacs/23.1 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" --=-=-= reopen 3921 thanks Chong Yidong writes: > > I checked in a slightly different fix. Reopening as I believe the looking-back limit prevents line-wrapped links working, like the foo.el below. But why not help-xref-info-regexp? Less code, no duplication of patterns. For a lisp tool there's no need to hold back on what libraries are loaded -- in fact letting someone else do the work is a very good thing! :-) (The worst duplication I struck lately was a while ago in info.el when digging around some node names. I recall unlovely duplication of patterns, making life hard if looking to tighten or loosen.) I thought of the URL links only afterwards, and didn't do anything about it. help-xref-url-regexp would again seem good as an authoritative pattern. --=-=-= Content-Type: text/x-diff Content-Disposition: inline; filename=checkdoc.el.info-link-2.diff --- checkdoc.el.~1.78.~ 2009-10-25 08:57:10.000000000 +1100 +++ checkdoc.el 2009-10-25 10:05:53.000000000 +1100 @@ -173,6 +173,9 @@ (defvar checkdoc-version "0.6.1" "Release version of checkdoc you are currently running.") +(require 'help-mode) ;; for help-xref-info-regexp +(require 'thingatpt) ;; for handy thing-at-point-looking-at + (defvar compilation-error-regexp-alist) (defvar compilation-mode-font-lock-keywords) @@ -2017,11 +2020,11 @@ (not (and (= ?/ (char-after e)) (= ?/ (char-before b)))) (not (checkdoc-in-example-string-p begin end)) - ;; info node - (not (save-excursion - (goto-char b) - (looking-back "\\<[Ii]nfo[ \t\n]+\\(node\\|anchor\\)[ \t\n]+`(" - (line-beginning-position))))) + ;; info or url links left alone + (not (thing-at-point-looking-at + help-xref-info-regexp)) + (not (thing-at-point-looking-at + help-xref-url-regexp))) (if (checkdoc-autofix-ask-replace b e (format "Text %s should be capitalized. Fix? " text) --=-=-= Content-Type: application/emacs-lisp Content-Disposition: attachment; filename=foo.el Content-Transfer-Encoding: quoted-printable ;;; foo.el --- blah ;;; Commentary: ;;; History: ;;; Code: (defun foo () "Blah blah. Something about the display and for more see Info node `(emacs)Usual Display Conventions'." 123) (provide 'foo) ;;; foo.el ends here --=-=-=-- From unknown Thu Aug 14 21:44:56 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: Did not alter fixed versions and reopened. Date: Sat, 24 Oct 2009 23:45:08 +0000 User-Agent: Fakemail v42.6.9 # A New Hope # A long time ago, in a galaxy far, far away # something happened. # # Magically this resulted in the following # action being taken, but this fake control # message doesn't tell you why it happened # # The action: # Did not alter fixed versions and reopened. thanks # This fakemail brought to you by your local debbugs # administrator From monnier@iro.umontreal.ca Sat Oct 24 18:02:21 2009 Received: (at 3921) by emacsbugs.donarmstrong.com; 25 Oct 2009 01:02:21 +0000 X-Spam-Checker-Version: SpamAssassin 3.2.5-bugs.debian.org_2005_01_02 (2008-06-10) on rzlab.ucr.edu X-Spam-Level: X-Spam-Bayes: score:0.5 Bayes not run. spammytokens:Tokens not available. hammytokens:Tokens not available. X-Spam-Status: No, score=-3.3 required=4.0 tests=AWL,HAS_BUG_NUMBER autolearn=ham version=3.2.5-bugs.debian.org_2005_01_02 Received: from ironport2-out.pppoe.ca (ironport2-out.teksavvy.com [206.248.154.183]) by rzlab.ucr.edu (8.14.3/8.14.3/Debian-5) with ESMTP id n9P12JWl016817; Sat, 24 Oct 2009 18:02:20 -0700 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AvAEAGZA40pLd/m0/2dsb2JhbACBUNQjhD8EiDQ X-IronPort-AV: E=Sophos;i="4.44,617,1249272000"; d="scan'208";a="48119921" Received: from 75-119-249-180.dsl.teksavvy.com (HELO pastel.home) ([75.119.249.180]) by ironport2-out.pppoe.ca with ESMTP; 24 Oct 2009 21:02:13 -0400 Received: by pastel.home (Postfix, from userid 20848) id B49548225; Sat, 24 Oct 2009 21:02:12 -0400 (EDT) From: Stefan Monnier To: Kevin Ryde Cc: 3921@debbugs.gnu.org, control@debbugs.gnu.org, Chong Yidong Subject: Re: bug#3921: 23.1.50; checkdoc allow uncapitalized info node links Message-ID: References: <87hbtq81gh.fsf@stupidchicken.com> <87fx98z7kd.fsf@blah.blah> Date: Sat, 24 Oct 2009 21:02:12 -0400 In-Reply-To: <87fx98z7kd.fsf@blah.blah> (Kevin Ryde's message of "Sun, 25 Oct 2009 10:38:26 +1100") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii > @@ -2017,11 +2020,11 @@ > (not (and (= ?/ (char-after e)) > (= ?/ (char-before b)))) > (not (checkdoc-in-example-string-p begin end)) > - ;; info node > - (not (save-excursion > - (goto-char b) > - (looking-back "\\<[Ii]nfo[ \t\n]+\\(node\\|anchor\\)[ \t\n]+`(" > - (line-beginning-position))))) > + ;; info or url links left alone > + (not (thing-at-point-looking-at > + help-xref-info-regexp)) > + (not (thing-at-point-looking-at > + help-xref-url-regexp))) > (if (checkdoc-autofix-ask-replace > b e (format "Text %s should be capitalized. Fix? " > text) Looks good, Stefan From gg@zip.com.au Tue Oct 27 16:02:28 2009 Received: (at 3921-done) by emacsbugs.donarmstrong.com; 27 Oct 2009 23:02:28 +0000 X-Spam-Checker-Version: SpamAssassin 3.2.5-bugs.debian.org_2005_01_02 (2008-06-10) on rzlab.ucr.edu X-Spam-Level: X-Spam-Bayes: score:0.5 Bayes not run. spammytokens:Tokens not available. hammytokens:Tokens not available. X-Spam-Status: No, score=-2.4 required=4.0 tests=AWL,HAS_BUG_NUMBER autolearn=ham version=3.2.5-bugs.debian.org_2005_01_02 Received: from mailout2.pacific.net.au (mailout2-5.pacific.net.au [61.8.2.228]) by rzlab.ucr.edu (8.14.3/8.14.3/Debian-5) with ESMTP id n9RN2QfE007802 for <3921-done@emacsbugs.donarmstrong.com>; Tue, 27 Oct 2009 16:02:27 -0700 Received: from mailproxy1.pacific.net.au (mailproxy1.pacific.net.au [61.8.2.162]) by mailout2.pacific.net.au (Postfix) with ESMTP id 2DD771929A6; Wed, 28 Oct 2009 10:02:24 +1100 (EST) Received: from blah.blah (ppp2E54.dyn.pacific.net.au [61.8.46.84]) by mailproxy1.pacific.net.au (Postfix) with ESMTP id 027398C03; Wed, 28 Oct 2009 10:02:20 +1100 (EST) Received: from gg by blah.blah with local (Exim 4.69) (envelope-from ) id 1N2v2z-0004wQ-5L; Wed, 28 Oct 2009 10:01:49 +1100 From: Kevin Ryde To: 3921-done@debbugs.gnu.org Cc: Stefan Monnier Subject: Re: bug#3921: 23.1.50; checkdoc allow uncapitalized info node links References: <87hbtq81gh.fsf@stupidchicken.com> <87fx98z7kd.fsf@blah.blah> Date: Wed, 28 Oct 2009 10:01:48 +1100 In-Reply-To: (Stefan Monnier's message of "Sat, 24 Oct 2009 21:02:12 -0400") Message-ID: <87skd4qw4j.fsf@blah.blah> User-Agent: Gnus/5.110011 (No Gnus v0.11) Emacs/23.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Stefan Monnier writes: > > Looks good, I checked it in. (And leaving the /emacs/ bit alone, though it may be redundant with the url-link regexp, as long as everyone uses URL `...' format.) From unknown Thu Aug 14 21:44:56 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Wed, 25 Nov 2009 15:24:13 +0000 User-Agent: Fakemail v42.6.9 # A New Hope # A long time ago, in a galaxy far, far away # something happened. # # Magically this resulted in the following # action being taken, but this fake control # message doesn't tell you why it happened # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator