]> Repositorios git - scryer-prolog.git/commitdiff
ENHANCED: more readable indentation of nested disjunctions
authorMarkus Triska <[email protected]>
Thu, 4 Mar 2021 20:38:39 +0000 (21:38 +0100)
committerMarkus Triska <[email protected]>
Thu, 4 Mar 2021 20:40:24 +0000 (21:40 +0100)
Example:

    ?- portray_clause((h :- a ; b ; c)).
    h :-
       (  a
       ;  b
       ;  c
       ).
       true.

src/lib/format.pl

index a9c8c32f2fb5c72272bd577f75f21a990ecaa993..823c700ca74138ce4f06cb8cc9cd58e846df3f7c 100644 (file)
@@ -528,6 +528,9 @@ else_branch(Else, I, VNs) -->
             body_(If, C, C, VNs), " ->\n",
             body_(Then, 0, C, VNs), "\n",
             else_branch(NextElse, I, VNs)
+        ;   { nonvar(Else), Else = ( A ; B ) } ->
+            body_(A, C, C, VNs), "\n",
+            else_branch(B, I, VNs)
         ;   body_(Else, C, C, VNs), "\n",
             indent_to(0, I),
             ")"