Subject: [PATCH] lisp/emacs-lisp/checkdoc.el - Fix Lisp symbol `some-symbol' should appear in quotes
From: Jari Aalto <[email-masked]>
To: [email-masked]
Date: Wed, 22 Dec 2010 12:03:19 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Package: emacs
Version: 23.2+1-5.1
Severity: normal

In docstrings like this:

    Return next limit point of 'status' section in current buffer.
    The limist are those of top level heading:

        # Changes to be committed:
        # Changed but not updated:
        # Untracked files:

    See manual page of git-status(1).

checkdoc reports:

    Lisp symbol `git-status' should appear in quotes

The following patch adjusts regexp by not matchig strings that are
immediately followed by "(". The patch is against

    0804bcf 2010-12-22  Merge branch 'master' of git://git.sv.gnu.org/emacs

2010-12-22  Jari Aalto  <[email-masked]>

        * emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine): Fix
        "Lisp symbol `some-symbol' should appear in quotes" by not matchig
        strings that are immediately followed by "(", like manual page
        refs some-page(1).

-- System Information
Debian Release: squeeze/sid
  APT Prefers testing
  APT policy: (990, testing) (500, unstable) (1, experimental)
Architecture: amd64
Kernel: Linux picasso 2.6.32-5-amd64 #1 SMP Fri Sep 17 21:50:19 UTC 2010 x86_64 GNU/Linux
Locale: LANG=en_DK.UTF-8

-- Versions of packages `emacs depends on'.
Depends:
emacs23         23.2+1-5.1      GNU Emacs is the extensible self-documenting 
emacs23-lucid   23.2+1-5.1      GNU Emacs is the extensible self-documenting 
emacs23-nox     23.2+1-5.1      GNU Emacs is the extensible self-documenting 

From f43bab31f13260966c18c0f15062b91cefb6cd32 Mon Sep 17 00:00:00 2001
From: Jari Aalto <[email-masked]>
Date: Wed, 22 Dec 2010 11:58:05 +0200
Subject: [PATCH] emacs-lisp/checkdoc.el: Fix "Lisp symbol `some-symbol' should appear in quotes"
Organization: Private
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit

Do not match strings that are immediately followed by "(", like manual
page refs some-page(1).

Signed-off-by: Jari Aalto <[email-masked]>
---
 lisp/emacs-lisp/checkdoc.el |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/lisp/emacs-lisp/checkdoc.el b/lisp/emacs-lisp/checkdoc.el
index 0a3b3c9..42ac504 100644
--- a/lisp/emacs-lisp/checkdoc.el
+++ b/lisp/emacs-lisp/checkdoc.el
@@ -1798,7 +1798,9 @@ Replace with \"%s\"? " original replace)
        (let ((found nil) (start (point)) (msg nil) (ms nil))
 	 (while (and (not msg)
 		     (re-search-forward
-		      "[^-([`':a-zA-Z]\\(\\w+[:-]\\(\\w\\|\\s_\\)+\\)[^]']"
+		      ;; Ignore manual page refereces like
+		      ;; git-config(1).
+		      "[^-([`':a-zA-Z]\\(\\w+[:-]\\(\\w\\|\\s_\\)+\\)[^](']"
 		      e t))
 	   (setq ms (match-string 1))
 	   ;; A . is a \s_ char, so we must remove periods from
-- 
1.7.2.3