From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Daniel Pfeiffer Newsgroups: gmane.emacs.bugs Subject: bug#10188: make-mode.el patch Date: Thu, 01 Dec 2011 23:46:10 +0100 Message-ID: <4ED803B2.2030801@t-online.de> Reply-To: occitan@esperanto.org NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------070904070000020501000007" X-Trace: dough.gmane.org 1322779685 8163 80.91.229.12 (1 Dec 2011 22:48:05 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Thu, 1 Dec 2011 22:48:05 +0000 (UTC) To: 10188@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Thu Dec 01 23:47:57 2011 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([140.186.70.17]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1RWFQ5-0006hx-1c for geb-bug-gnu-emacs@m.gmane.org; Thu, 01 Dec 2011 23:47:57 +0100 Original-Received: from localhost ([::1]:54407 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RWFQ4-0001ut-JG for geb-bug-gnu-emacs@m.gmane.org; Thu, 01 Dec 2011 17:47:56 -0500 Original-Received: from eggs.gnu.org ([140.186.70.92]:55211) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RWFQ1-0001ud-16 for bug-gnu-emacs@gnu.org; Thu, 01 Dec 2011 17:47:54 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RWFPz-0000yV-Lj for bug-gnu-emacs@gnu.org; Thu, 01 Dec 2011 17:47:53 -0500 Original-Received: from debbugs.gnu.org ([140.186.70.43]:48174) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RWFPz-0000yR-K8 for bug-gnu-emacs@gnu.org; Thu, 01 Dec 2011 17:47:51 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.69) (envelope-from ) id 1RWFQA-0006de-Ch for bug-gnu-emacs@gnu.org; Thu, 01 Dec 2011 17:48:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Daniel Pfeiffer Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 01 Dec 2011 22:48:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 10188 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.132277967425502 (code B ref -1); Thu, 01 Dec 2011 22:48:02 +0000 Original-Received: (at submit) by debbugs.gnu.org; 1 Dec 2011 22:47:54 +0000 Original-Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1RWFQ1-0006dH-TB for submit@debbugs.gnu.org; Thu, 01 Dec 2011 17:47:54 -0500 Original-Received: from eggs.gnu.org ([140.186.70.92]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1RWFOo-0006bO-BE for submit@debbugs.gnu.org; Thu, 01 Dec 2011 17:46:39 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RWFOb-0000Zj-Ow for submit@debbugs.gnu.org; Thu, 01 Dec 2011 17:46:27 -0500 Original-Received: from lists.gnu.org ([140.186.70.17]:46960) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RWFOb-0000ZX-Mp for submit@debbugs.gnu.org; Thu, 01 Dec 2011 17:46:25 -0500 Original-Received: from eggs.gnu.org ([140.186.70.92]:54258) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RWFOa-0001bK-5n for bug-gnu-emacs@gnu.org; Thu, 01 Dec 2011 17:46:25 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RWFOY-0000X0-5I for bug-gnu-emacs@gnu.org; Thu, 01 Dec 2011 17:46:23 -0500 Original-Received: from mailout11.t-online.de ([194.25.134.85]:37762) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RWFOX-0000WH-PQ for bug-gnu-emacs@gnu.org; Thu, 01 Dec 2011 17:46:22 -0500 Original-Received: from fwd19.aul.t-online.de (fwd19.aul.t-online.de ) by mailout11.t-online.de with smtp id 1RWFOV-00010Z-JK; Thu, 01 Dec 2011 23:46:19 +0100 Original-Received: from [192.168.178.24] (ZehhL8ZrQhjOn9hhax-D96J1n7Dk0-VYUylJH0adncVD9wXFcPfdv6sMKkYt5h6QeS@[84.176.220.6]) by fwd19.t-online.de with esmtp id 1RWFOM-1VYTeS0; Thu, 1 Dec 2011 23:46:10 +0100 User-Agent: Mozilla/5.0 (X11; Linux i686; rv:8.0) Gecko/20111124 Thunderbird/8.0 X-ID: ZehhL8ZrQhjOn9hhax-D96J1n7Dk0-VYUylJH0adncVD9wXFcPfdv6sMKkYt5h6QeS X-TOI-MSGID: 5c1e4861-e56f-4da7-a9cd-024d6663bb0e X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-Mailman-Approved-At: Thu, 01 Dec 2011 17:47:52 -0500 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list Resent-Date: Thu, 01 Dec 2011 17:48:02 -0500 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) X-Received-From: 140.186.70.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:54579 Archived-At: This is a multi-part message in MIME format. --------------070904070000020501000007 Content-Type: multipart/alternative; boundary="------------030809050605040402060806" --------------030809050605040402060806 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hi, So sorry, I give up on Bazaar. I can understand cvs was not optimal for such a big project, but the VC chaos that has sprung up since is terrible! Somehow I managed some time ago to download a gigantic emacs bzr repository. But I used emacs VC commands to check in my patch, it doesn't show up in the internet and neither your quick start guide, nor the doc tells me why. So I try to follow your instructions to set up my local sandbox anew, to no avail: $ bzr checkout *bzr+ssh*://pfeiffer@bzr.savannah.gnu.org/srv/bzr/emacs/trunk trunk bzr: ERROR: Not a branch: "bzr+ssh://pfeiffer@bzr.savannah.gnu.org/srv/bzr/emacs/trunk/". $ bzr checkout *sftp*://pfeiffer@bzr.savannah.gnu.org/srv/bzr/emacs/trunk trunk subsystem request failed on channel 0 bzr: ERROR: Unable to connect to SSH host bzr.savannah.gnu.org; EOF during negotiation This has been going on for several days. So please just accept a plain old submission: 2011-12-01 pfeiffer * progmodes/make-mode.el: Bring it up to date with imminent makepp V2.0. coralament / best Grötens / liebe Grüße / best regards / elkorajn salutojn Daniel Pfeiffer -- lerne / learn / apprends / lär dig / ucz się Esperanto: http://lernu.net / http://ikurso.net --------------030809050605040402060806 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: 8bit Hi,

So sorry, I give up on Bazaar.  I can understand cvs was not optimal for such a big project, but the VC chaos that has sprung up since is terrible!  Somehow I managed some time ago to download a gigantic emacs bzr rep
ository.  But I used emacs VC commands to check in my patch, it doesn't show up in the internet and neither your quick start guide, nor the doc tells me why.  So I try to follow your instructions to set up my local sandbox anew, to no avail:

$ bzr checkout bzr+ssh://pfeiffer@bzr.savannah.gnu.org/srv/bzr/emacs/trunk trunk
bzr: ERROR: Not a branch: "bzr+ssh://pfeiffer@bzr.savannah.gnu.org/srv/bzr/emacs/trunk/".
$ bzr checkout sftp://pfeiffer@bzr.savannah.gnu.org/srv/bzr/emacs/trunk trunk
subsystem request failed on channel 0
bzr: ERROR: Unable to connect to SSH host bzr.savannah.gnu.org; EOF during negotiation

This has been going on for several days.  So please just accept a plain old submission:

2011-12-01  pfeiffer  <occitan@esperanto.org>

    * progmodes/make-mode.el: Bring it up to date with imminent makepp
    V2.0.
coralament / best Grötens / liebe Grüße / best regards / elkorajn salutojn
Daniel Pfeiffer

-- 
lerne / learn / apprends / lär dig / ucz się    Esperanto:
                    http://lernu.net  /  http://ikurso.net
--------------030809050605040402060806-- --------------070904070000020501000007 Content-Type: text/x-patch; name="make-mode.diff" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="make-mode.diff" --- old/progmodes/make-mode.el 2011-11-26 08:26:37.000000000 +0100 +++ new/progmodes/make-mode.el 2011-11-27 18:22:28.639636060 +0100 @@ -315,25 +315,32 @@ "List of keywords understood by automake.") (defconst makefile-gmake-statements - `("-sinclude" "sinclude" "vpath" ; makefile-makepp-statements takes rest + `("-sinclude" "sinclude" ; makefile-makepp-statements takes rest "ifdef" "ifndef" "ifeq" "ifneq" "-include" "define" "endef" "export" - "override define" "override" "unexport" + "override define" "override" "unexport" "vpath" ,@(cdr makefile-automake-statements)) "List of keywords understood by gmake.") -;; These are even more silly, because you can have more spaces in between. (defconst makefile-makepp-statements - `("and ifdef" "and ifndef" "and ifeq" "and ifneq" "and ifperl" - "and ifmakeperl" "and ifsys" "and ifnsys" "build_cache" "build_check" + `(t ; - alternately means _ + ;; todo: take if* out of these lists, and let the negation regexp do it all + "ifperl" "ifmakeperl" "ifsys" "ifnsys" "iftrue" "ifntrue" + "and ifdef" "and ifndef" "and ifeq" "and ifneq" "and ifperl" + "and ifmakeperl" "and ifsys" "and ifnsys" "and iftrue" "and ifntrue" "else ifdef" "else ifndef" "else ifeq" "else ifneq" "else ifperl" - "else ifmakeperl" "else ifsys" "else ifnsys" "enddef" "global" - "load_makefile" "ifperl" "ifmakeperl" "ifsys" "ifnsys" "_include" - "makeperl" "makesub" "no_implicit_load" "perl" "perl-begin" "perl_begin" - "perl-end" "perl_end" "prebuild" "or ifdef" "or ifndef" "or ifeq" - "or ifneq" "or ifperl" "or ifmakeperl" "or ifsys" "or ifnsys" - "override export" "override global" "register_command_parser" - "register_scanner" "repository" "runtime" "signature" "sub" - ,@(nthcdr 3 makefile-gmake-statements)) + "else ifmakeperl" "else ifsys" "else ifnsys" "else iftrue" "else ifntrue" + "or ifdef" "or ifndef" "or ifeq" "or ifneq" "or ifperl" + "or ifmakeperl" "or ifsys" "or ifnsys" "or iftrue" "or ifntrue" + + "autoload" "build-cache" "build-check" "enddef" "export define" + "global" "global build-cache" "global build-check" "global define" + "global signature" "global override signature" "load-makefile" + "make" "makeperl" "makesub" "no-implicit-load" "perl" "perl-begin" + "perl-end" "prebuild" "override export" "override global" "register-parser" + "register-command-parser" "register-input-suffix" + "register-scanner" "repository" "runtime" "signature" "sub" + + ,@(nthcdr 2 makefile-gmake-statements)) "List of keywords understood by gmake.") (defconst makefile-bsdmake-statements @@ -372,7 +379,11 @@ ;; Fontify conditionals and includes. (,(concat "^\\(?: [ \t]*\\)?" - (regexp-opt keywords t) + (replace-regexp-in-string + " " "[ \t]+" + (if (eq (car keywords) t) + (replace-regexp-in-string "-" "[_-]" (regexp-opt (cdr keywords) t)) + (regexp-opt keywords t))) "\\>[ \t]*\\([^: \t\n#]*\\)") (1 font-lock-keyword-face) (2 font-lock-variable-name-face)) @@ -436,7 +447,7 @@ makefile-var-use-regex makefile-makepp-statements nil - "^\\(?: [ \t]*\\)?\\(?:and[ \t]+\\|else[ \t]+\\|or[ \t]+\\)?if\\(n\\)\\(?:def\\|eq\\|sys\\)\\>" + "^\\(?: [ \t]*\\)?\\(?:and[ \t]+\\|else[ \t]+\\|or[ \t]+\\)?if\\(n\\)\\(?:def\\|eq\\|sys\\|true\\)\\>" '("[^$]\\(\\$[({]\\(?:output\\|stem\\|target\\)s?\\_>.*?[})]\\)" 1 'makefile-targets append) @@ -447,17 +458,17 @@ (2 font-lock-keyword-face t) (3 font-lock-variable-name-face t)) - ;; $(function ...) $((function ...)) ${function ...} ${{function ...}} - '("[^$]\\$\\(?:((?\\|{{?\\)\\([-a-zA-Z0-9_.]+\\s \\)" + ;; $(function ...) $((function ...)) ${...} ${{...}} $[...] $[[...]] + '("[^$]\\$\\(?:((?\\|{{?\\|\\[\\[?\\)\\([-a-zA-Z0-9_.]+\\s \\)" 1 font-lock-function-name-face prepend) - ;; $(shell ...) $((shell ...)) ${shell ...} ${{shell ...}} - '("[^$]\\$\\(((?\\|{{?\\)shell\\(?:[-_]\\(?:global[-_]\\)?once\\)?[ \t]+" + ;; $(shell ...) $((shell ...)) ${...} ${{...}} $[...] $[[...]] + '("[^$]\\$\\(((?\\|{{?\\|\\[\\[?\\)shell\\(?:[-_]\\(?:global[-_]\\)?once\\)?[ \t]+" makefile-match-function-end nil nil (1 'makefile-shell prepend t)) - ;; $(perl ...) $((perl ...)) ${perl ...} ${{perl ...}} - '("[^$]\\$\\(((?\\|{{?\\)makeperl[ \t]+" + ;; $(perl ...) $((perl ...)) ${...} ${{...}} $[...] $[[...]] + '("[^$]\\$\\(((?\\|{{?\\|\\[\\[?\\)makeperl[ \t]+" makefile-match-function-end nil nil (1 'makefile-makepp-perl prepend t)) '("[^$]\\$\\(((?\\|{{?\\)perl[ \t]+" @@ -1688,8 +1699,10 @@ ;; FIXME forward-sexp or somesuch would be better? (if (setq s (cond ((string= s "(") ")") ((string= s "{") "}") + ((string= s "[") "]") ((string= s "((") "))") - ((string= s "{{") "}}"))) + ((string= s "{{") "}}") + ((string= s "[[") "]]"))) (re-search-forward (concat "\\(.*\\)[ \t]*" s) (line-end-position) t)))) (defun makefile-match-dependency (bound) --------------070904070000020501000007--