From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Markus Triska Newsgroups: gmane.emacs.bugs Subject: bug#21526: 24.5; prolog-mode: broken indentation for if-then-else construct Date: Wed, 30 Sep 2015 08:38:45 +0200 Message-ID: <87y4fo9zt6.fsf@metalevel.at> References: NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1443675296 12828 80.91.229.3 (1 Oct 2015 04:54:56 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 1 Oct 2015 04:54:56 +0000 (UTC) Cc: 21526@debbugs.gnu.org To: Stefan Monnier Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Thu Oct 01 06:54:48 2015 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1ZhVtG-0002qc-U0 for geb-bug-gnu-emacs@m.gmane.org; Thu, 01 Oct 2015 06:54:47 +0200 Original-Received: from localhost ([::1]:37735 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZhVtG-0003qv-1i for geb-bug-gnu-emacs@m.gmane.org; Thu, 01 Oct 2015 00:54:46 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:41468) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZhB2f-0005q6-Q8 for bug-gnu-emacs@gnu.org; Wed, 30 Sep 2015 02:39:06 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZhB2c-0006na-Jx for bug-gnu-emacs@gnu.org; Wed, 30 Sep 2015 02:39:05 -0400 Original-Received: from debbugs.gnu.org ([208.118.235.43]:59548) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZhB2c-0006nP-Ga for bug-gnu-emacs@gnu.org; Wed, 30 Sep 2015 02:39:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1ZhB2c-0007lz-Bf for bug-gnu-emacs@gnu.org; Wed, 30 Sep 2015 02:39:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Markus Triska Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 30 Sep 2015 06:39:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 21526 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 21526-submit@debbugs.gnu.org id=B21526.144359512829856 (code B ref 21526); Wed, 30 Sep 2015 06:39:02 +0000 Original-Received: (at 21526) by debbugs.gnu.org; 30 Sep 2015 06:38:48 +0000 Original-Received: from localhost ([127.0.0.1]:48519 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZhB2N-0007lU-J1 for submit@debbugs.gnu.org; Wed, 30 Sep 2015 02:38:48 -0400 Original-Received: from static.59.150.47.78.clients.your-server.de ([78.47.150.59]:53527 helo=metalevel.at) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1ZhB2M-0007lM-1l for 21526@debbugs.gnu.org; Wed, 30 Sep 2015 02:38:46 -0400 Original-Received: by metalevel.at (Postfix, from userid 1000) id 77963EC0FE; Wed, 30 Sep 2015 08:38:45 +0200 (CEST) In-Reply-To: (Stefan Monnier's message of "Tue, 29 Sep 2015 23:28:48 -0400") X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 208.118.235.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:107080 Archived-At: Stefan Monnier writes: >> (c) Arguments of directives should be more indented. For example, a >> directive whose arguments span several lines should look like this: >> >> :- multifile >> pred1, >> pred2, >> pred3. > > I have no idea what "directives" are nor what the above "multifile" > means nor what is its syntax. Does Bruda's code handle that? Yes. All issues I reported so far are deviations from Stefan Bruda's original version. His version also highlights DCG heads with zero arguments correctly. A directive starts with :- or ?- in a source file. > >> `prolog-keywords' contains the directives where a hanging indentation of >> prolog-indent-width in subsequent lines would be very welcome. > > That's vague: what means "subsequent lines"? > Anything until a "."? What about a ";" or a ":-" or a "-->"? (:-)/1 can be read just like a Prolog rule, only without head. So, after :-, I expect the same indentation like in a rule. A directive can include any regular Prolog goal. >> test_predicate(c) :- !, >> test_goal1, >> test_goal2. > > Should work now. Awesome, thank you! Regarding comments, one more thing I noticed is that in a multiline comment like /* ... */, we actually expect a small indentation like: /* Hello, indented world! */ as in the default C mode, but currently get: /* Not indented. */ In Stefan Bruda's version, we get the former layout. All the best, Markus